随笔分类 -  ACM相关-模拟

摘要:"传送门" 题意 给出一个数组A,你有一个数组B(一开始全为0),询问多少次操作后B转化为A 一次操作:选择一段区间,加上某个正整数 分析 构建一个栈, 输入一个数,若当前栈空或栈顶元素比输入小,则加入栈中,否则若大于栈顶元素,则删去栈顶元素,放入输入元素,复杂度O(n) trick 代码 incl 阅读全文
posted @ 2017-10-19 10:59 遗风忘语 阅读(107) 评论(0) 推荐(0)
摘要:"传送门" 题意 分析 可知对与某个数x,设其可发送信息的边界为[L,R],那么随着x的递增,[L,R]也右移,故可对输入数排序,做一次双指针即可 trick 代码 //1. Aj 8 Ai + 8 或者 //3. Ai 88888 / i不会给j发消息当且仅当 8 a[j]8 a[i]+8 a[i 阅读全文
posted @ 2017-10-16 22:53 遗风忘语 阅读(248) 评论(0) 推荐(0)
摘要:"传送门" 题意 分析 每次插入人名与邮箱的时候,做一次并查集,然后做一次sort即可 trick 3 a 1 first@hihocoder.com b 1 second@hihocoder.com c 2 first@hihocoder.com second@hihocoder.com 代码 i 阅读全文
posted @ 2017-10-16 12:10 遗风忘语 阅读(182) 评论(0) 推荐(0)
摘要:"传送门" 题意 给出N,K,给出N对数a[i],b[i],选择一些数使得or和小于k且$max\sum b[i]$ 分析 枚举k的每一个1位,将其删去并让低位全为1,对于每一个这样的数c,如果a[i]|c==c,那么就加上b[i],最后取最大值即可 trick 代码 include using n 阅读全文
posted @ 2017-10-06 10:43 遗风忘语 阅读(134) 评论(0) 推荐(0)
摘要:"传送门" 题意 给出一个排列,定义$value为\sum_{i=1}^{n 1}abs(f[i+1] f[i])$ $swap(a[i],a[j])(i≠j)为一次交换$,询问最少的交换次数使得value最大 分析 如果f[i+1] f[i],答案就+f[i+1] f[i]; 如果f[i+1]n/ 阅读全文
posted @ 2017-09-28 10:55 遗风忘语 阅读(137) 评论(0) 推荐(0)
摘要:"传送门" 题意 略 分析 由低位向高位考虑,令f(n)为n的扩展二进制数表示数 1.当前数为偶数,末位为0或2,那么f(n)=f(n/2)+f(n/2 1) 2.当前数为奇数,末位为1,那么f(n)=f(n/2) 3.n==0,返回1 其他 思路1 "高位向低位考虑" 思路2 "dp转移" 阅读全文
posted @ 2017-09-23 11:01 遗风忘语 阅读(220) 评论(0) 推荐(0)
摘要:"传送门" 题意 给出n种袜子,每种袜子个数a[i],两只相同种类袜子配成一对,询问至少拿出多少只袜子能 确保 配出k对袜子 分析 In order to find out the minimum number of socks needed, we should analyse the worst 阅读全文
posted @ 2017-07-07 14:03 遗风忘语 阅读(154) 评论(0) 推荐(0)
摘要:某科学的打麻将 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 113 Accepted Submission(s): 33 Problem D 阅读全文
posted @ 2017-07-06 11:48 遗风忘语 阅读(654) 评论(0) 推荐(0)
摘要:"传送门" 题意 给出n个数,计算在进行n 1次右移中$min\sum_{i=1}^nabs(p_i i)$ 分析 我们设置cnt[p[i] i]为一个数p[i]与它标准位置(如1的标准位置为1)的左偏差,用L记录一个数在标准位置左边/上的个数,R为在右边的个数,关键在于n 1次移动中如何更新$mi 阅读全文
posted @ 2017-07-05 11:17 遗风忘语 阅读(160) 评论(0) 推荐(0)
摘要:"传送门" 题意 给出正n多边形和一个数a,寻找与a最接近的角,输出角编号 分析 找出多边形上所有角,一一比对即可 trick 1.判断的时候注意精度,i.e.x eps 0 2.double与double相除时不要立刻转化成int,可能会有误差 代码 阅读全文
posted @ 2017-07-04 15:10 遗风忘语 阅读(170) 评论(0) 推荐(0)
摘要:"传送门" 题意 对于n个女孩,每次分成x人/组,每组比较次数为$\frac{x(x+1)}{2}$,直到剩余1人 计算$$\sum_{i=l}^{r}t^{i l}f(i)$$,其中f(i)代表i个女孩的最少比较数 分析 难度在于如何计算f(i),f(i)每次除的是素数,详情见 "题解" 那么我们 阅读全文
posted @ 2017-07-04 12:40 遗风忘语 阅读(217) 评论(0) 推荐(0)
摘要:"传送门" 题意 分析 考虑将区间按右端点排序,再遍历区间,操作即可 建议以加方式写 trick 1.不需要判区间重合 代码 阅读全文
posted @ 2017-05-13 00:23 遗风忘语 阅读(180) 评论(0) 推荐(0)
摘要:"传送门" 题意 给出x个a区间和y个b区间,询问a和b交区间的子区间长度为m的个数 分析 类似于双指针,具体见代码 trick 代码 阅读全文
posted @ 2017-04-26 22:30 遗风忘语 阅读(177) 评论(0) 推荐(0)
摘要:"传送门" 题意 略 分析 枚举合成ab的数量,在此基础上合成bc和ac,复杂度$O(n)$ trick 代码 include include using namespace std; define ll long long int t; ll a,b,c,ab,ac,bc,ans,ret; int 阅读全文
posted @ 2017-04-17 15:26 遗风忘语 阅读(121) 评论(0) 推荐(0)
摘要:"传送门" 题意 给出m个面的骰子扔n次,取最大值,求期望 分析 暴力算会有重复,而且复杂度不对。 考虑m个面扔n次得到m的概率,发现只要减去 (m 1)个面扔n次得到m 1的概率 即可,给出example说明 得到公式 $$\sum_{i=1}^m{i (i^n (i 1)^n)/m^n}$$ 代 阅读全文
posted @ 2017-03-18 08:59 遗风忘语 阅读(148) 评论(0) 推荐(0)
摘要:"传送门" 题意 给出一个只包含'(',')'的字符序列,询问有多少个$RSBS$ 分析 首先需要知道一个公式 $$\sum_{i=0}^{min(x,y)}C_x^i C_y^i=C_{x+y}^x$$ 接下来我们观察第i个'(',假设它左边有x个'(',右边有y个')',那么 包含它 的RSBS 阅读全文
posted @ 2017-03-16 18:55 遗风忘语 阅读(435) 评论(0) 推荐(0)
摘要:Problem A 题意 给出l(房子宽度),d(pole距离房子的垂直距离),s(绳子长度),求可覆盖的面积 分析 一共四种情况 $$1.ssqrt(d d+l l/2)+l/2$$ 说一下第四种,第四种要减去一个重叠部分,重叠部分面积为2个(扇形 三角形),具体见代码 代码 Problem B 阅读全文
posted @ 2017-02-15 20:53 遗风忘语 阅读(132) 评论(0) 推荐(0)
摘要:Problem A 题意 一对兔子每月生一对兔子,兔子在$m$月后成熟,问$d$月后有多少兔子 分析 可以发现,第i月的兔子数量取决于第i 1月与i m月,故 $a[i]=a[i 1]+a[i m],a[0]=1$ 然后还需要高精度(捂脸),于是找了个高精度板子就好了 Problem D 题意 给出 阅读全文
posted @ 2017-02-14 12:12 遗风忘语 阅读(193) 评论(0) 推荐(0)
摘要:题目链接:G. New Roads 题意:给出n个结点,t层深度,每层有a[i]个结点,总共有k个叶子结点,构造一棵树。 分析: 考虑一颗树,如果满足每层深度上有a[i]结点,最多能有多少叶子结点 那么答案很简单,就是对(a[i]-1)求和再加1(每一层的结点都集中在上一层的一个结点上) 同理,我们 阅读全文
posted @ 2016-12-22 19:09 遗风忘语 阅读(120) 评论(0) 推荐(0)
摘要:题目链接:OX 题意 :给出一个3X3的黑白棋棋盘,棋盘上有若干黑白子,再给出下一个下的人,问下一个下的人能否赢 分析:考虑到只有39种状态,故用一个数保存目前棋盘的状态,记为value,再枚举空位DFS,每次 DFS先判该状态是否已到达(剪枝),再拆分状态用c[3][3]储存,判断是否有赢的状态, 阅读全文
posted @ 2016-12-16 22:27 遗风忘语 阅读(518) 评论(0) 推荐(0)