12 2017 档案

摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 迭代加深搜索。 枚举最大量maxdep 在dfs里面传剩余的要凑的分子、分母 以及上一次枚举的值是多少。 然后找到最小的k,满足1/k剪枝就是剩余的全都用这个最大的分数。如果都不行就肯定不行了。 二分找这个k. 不能用的数字就直 阅读全文
posted @ 2017-12-31 22:08 AWCXV 阅读(186) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 先预处理出来一个正方形。 然后每次枚举新加的正方形左上角的坐标就可以。 注意覆盖的规则,控制一下就可以。 然后暴力判断是否相同。 暴力回溯即可(只用回溯一个正方形区域) 【代码】 cpp / 1.Shoud it use lon 阅读全文
posted @ 2017-12-31 17:28 AWCXV 阅读(154) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 枚举前i 1个圆。 哪些圆和它相交。 取圆心纵坐标最大的那个圆就可以了。 【代码】 cpp include using namespace std; const int N = 1e3; vector now; int a[N+ 阅读全文
posted @ 2017-12-30 10:54 AWCXV 阅读(191) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 枚举一下全排列。看看有多少种可以到达终点即可。 【代码】 cpp include using namespace std; const int dx[4] = {0,0,1, 1}; const int dy[4] = {1, 阅读全文
posted @ 2017-12-30 10:51 AWCXV 阅读(168) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 是元音字母或者是奇数就递增。 【代码】 cpp include using namespace std; map dic; int main(){ ifdef LOCAL_DEFINE freopen("rush_in.txt" 阅读全文
posted @ 2017-12-30 10:49 AWCXV 阅读(131) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 排列中交换任意两个数字。 排列的逆序对个数的奇偶性会发生变化。 翻转这个过程其实就是len/2对数字发生交换。 交换了偶数次的话,不变,否则奇偶性发生改变。 先暴力求出一开始的逆序对个数就好 【代码】 阅读全文
posted @ 2017-12-29 11:22 AWCXV 阅读(148) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 直觉题。 感觉情况会很少。 毕竟间隔太大了。中间肯定有一些数字达不到。 有1肯定可以 2 2 x肯定可以 3 3 3也可以 2 4 4也可以。 就这样 【代码】 cpp include using namespace std; 阅读全文
posted @ 2017-12-29 11:17 AWCXV 阅读(225) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 从小到大枚举x. 看看a/x+b/x是不是大于等于n 是的话。 看看是不是两种蛋糕都能凑一堆。 也即x的最大枚举量是min(a,b) 不然可能有多余的a%x没地方放。(因为它都还没有一堆 【代码】 cpp include usi 阅读全文
posted @ 2017-12-29 10:22 AWCXV 阅读(223) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 找出最小的数字的位置。 最近的肯定是相邻的某对。 【代码】 cpp include using namespace std; const int N = 1e5; int n; int a[N+10],mi; int main( 阅读全文
posted @ 2017-12-29 10:17 AWCXV 阅读(156) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 枚举两个串的前缀长度就好。 组出来。 排序。 取字典序最小的那个。 【代码】 cpp include using namespace std; string s1,s2; vector v; int main(){ ifdef 阅读全文
posted @ 2017-12-28 10:15 AWCXV 阅读(279) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 处理出所有的线 其实就是区间。 总共有n (n+1)/2个 然后按照左端点、右端点排序 每次取最左边的线。 多种可能就取右端点尽量小的线。 v[i]i是左端点,里面的东西是右端点。 每个v[i]都从大到小排。 则每次取v[i]的 阅读全文
posted @ 2017-12-28 10:11 AWCXV 阅读(178) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 一个for循环之后。 下一个写代码的地方一是从(x+1,y+1)开始的 然后如果写完了一个simple statement 下次就有(x+1,y),(x+1,y 1),(x+1,y 2)..(x+1,0)这些位置可以写下一行的代 阅读全文
posted @ 2017-12-28 10:06 AWCXV 阅读(358) 评论(2) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 一定在这里写完思路再敲代码!!! 处理出5个工作单元在哪些时刻会被用到。 设为initstatu 因为每次都会面临之前已经用了一段程序,而现在要走下一步的情况 但有一些地方是肯定已经不能走了的。 我们可以预处理出来哪些地方是可以 阅读全文
posted @ 2017-12-26 17:14 AWCXV 阅读(179) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 二进制枚举要解开哪些环。 把所有和它相关的边都删掉。 对于剩下的联通分量。 看看是不是每一个联通分量都是一条链 每个点的度数都不大于2 不是环。 同时剩余的联通分量的个数x 解开的环的个数y y =x 1才行 满足以上条件即可 阅读全文
posted @ 2017-12-26 13:41 AWCXV 阅读(162) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 每次搜素要往下还是要往右摆。 然后维护一下让每个下标只出现一次就可以了。 = 作为剪枝条件 【代码】 cpp / 1.Shoud it use long long ? 2.Have you ever test several s 阅读全文
posted @ 2017-12-25 18:53 AWCXV 阅读(190) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 暴力枚举每次走哪里就好。 用一个二维数组来判重。(数据里,要求不能经过一个点两次 但路径可以相交 然后再用一个flag数组,来判断这个点能不能走。 【代码】 cpp / 1.Shoud it use long long ? 2. 阅读全文
posted @ 2017-12-21 11:26 AWCXV 阅读(187) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 维护最右端的端点就好。 【代码】 cpp include using namespace std; int n,m,now = 0; int main(){ ifdef LOCAL_DEFINE freopen("rush_in 阅读全文
posted @ 2017-12-20 12:19 AWCXV 阅读(95) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 从根节点开始。 显然它是什么颜色.就要改成对应的颜色。(如果上面已经有某个点传了值就不用改 然后往下传值。 【代码】 cpp include using namespace std; const int N = 1e4; int 阅读全文
posted @ 2017-12-20 12:17 AWCXV 阅读(170) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 显然只有当a[i]和a[i 1]都大于1的时候才会有不同的情况。 a[i] = a[i 1] 且a[i 1] =2 则第i 1层的a[i 1]个节点,每个节点下面接一个第i层的节点. 然后剩下的a[i] a[i 1]个都放在第i 阅读全文
posted @ 2017-12-20 12:16 AWCXV 阅读(130) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 预处理一下终点能到达哪些点。 暴力就好。 输出结果的时候,数字之间一个空格。。 【代码】 cpp / 1.Shoud it use long long ? 2.Have you ever test several sample( 阅读全文
posted @ 2017-12-19 17:27 AWCXV 阅读(210) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 先预处理出所有的正方形(长度为1,2...n的)所包含哪些边。 然后记录每个正方形的应有边长和实际边长(有些边被删掉了); 然后搜的时候,每次找到第一个还是完整的正方形。 枚举删掉它的哪一条边。 然后看看哪些正方形会受到影响。 阅读全文
posted @ 2017-12-19 16:16 AWCXV 阅读(228) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 贪心 1优先和2组队。 如果1没有了 就结束。 如果1还有多余的。 那么就自己3个3个组队 【代码】 cpp include using namespace std; const int N = 2e5; int n; int 阅读全文
posted @ 2017-12-17 18:23 AWCXV 阅读(139) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 闰,平,平 平,闰,平 平,平,闰 平,平,平 4种情况都考虑到就好。 可能有重复的情况。 但是没关系啦。 【代码】 cpp include using namespace std; const int N = 24; int 阅读全文
posted @ 2017-12-17 18:20 AWCXV 阅读(145) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 1. n为偶数。 l = 1, r = n (l,r)放在一组 l++,r 新的l,r放在另外一组 直到l+1==r 这个时候,判断两组的和,如果一样的话,分散在两组 差为1否则差为0 2. n为奇数 l = 2,r = n ( 阅读全文
posted @ 2017-12-17 18:15 AWCXV 阅读(186) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 让N乘2 a 然后看一下位数是多少。 假设有x位(x =2) 则(0..(a%10 1) ) + (99..9)[x 1个]都是合法的 转化为1..N里面有多少对,它们的和为x x总是为奇数 若x 1n 则让temp = x n 阅读全文
posted @ 2017-12-17 18:12 AWCXV 阅读(199) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 模拟 【代码】 cpp / 1.Shoud it use long long ? 2.Have you ever test several sample(at least therr) yourself? 3.Can you p 阅读全文
posted @ 2017-12-17 08:55 AWCXV 阅读(159) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 可以直接一层循环枚举。 也可以像我这样用一个数组来存y b有哪些。 当然。感觉这样做写麻烦了。。 【代码】 cpp / 1.Shoud it use long long ? 2.Have you ever test severa 阅读全文
posted @ 2017-12-17 08:54 AWCXV 阅读(133) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 用map dic;模拟就好。 后缀。翻转一下就变成前缀了。 两重循环剔除这种情况不输出就好。 【代码】 cpp / 1.Shoud it use long long ? 2.Have you ever test several 阅读全文
posted @ 2017-12-17 08:51 AWCXV 阅读(146) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 尺取法+二分。 类似滑动窗口。 即左端点为l,右端点为r. 维护a[r] a[l]+1总是小于等于m的就好。 (大于m就右移左端点) 然后看看里面的数字个数是不是小于k; 不是的话让l..r中最右边那个数字删掉就好。 链表优化一 阅读全文
posted @ 2017-12-17 08:47 AWCXV 阅读(233) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 借鉴网上的题解的。 思路是。 用"标准化"的思想。 确定基准点(0,0) 然后假设(0,0)是第一个连通块。 然后通过大小为1的连通块(0,0)得到所有大小为2的连通块。 然后得到所有大小为3的连通块。。 以此类推 这样可以避免 阅读全文
posted @ 2017-12-16 17:47 AWCXV 阅读(192) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 结论:每次只用新生成的数字就好了。 然后就是IDA 了。 迭代深搜+剪枝。 【代码】 cpp / 1.Shoud it use long long ? 2.Have you ever test several sample(at 阅读全文
posted @ 2017-12-14 20:20 AWCXV 阅读(200) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 1.N/s1 s1 v2的话。 可以想见,如果第二种物品的数量超过了s1的话,显然可以把它占的体积都用来买物品1,因为那样更优。 则我们第二种物品最多只要枚举到s1就可以了。 同理s2 v1 【代码】 cpp / 1.Shoud 阅读全文
posted @ 2017-12-14 11:40 AWCXV 阅读(168) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 迭代加深搜索。 每次抽动操作最多只会让中间那一块的区域离目标的“距离”减少1. 以这个作为剪枝。 枚举最大深度。 就能过了。 【代码】 cpp include include include include include us 阅读全文
posted @ 2017-12-14 11:01 AWCXV 阅读(150) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 枚举删除第i个数字。 想想删掉这个数字后会有什么影响? 首先,如果a[i]如果是a[1..i]中最大的数字 那么record会减少1. 其次。 对于任意一个a[j],且i 【代码】 cpp / 1.Shoud it use lo 阅读全文
posted @ 2017-12-12 03:51 AWCXV 阅读(343) 评论(6) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 找循环节就好。 其实可以不用找出来整个循环节。 有找到c就直接输出。 找到了循环节还没找到的话,直接输出无解。 【代码】 cpp include using namespace std; int a,b,c; int bo[(i 阅读全文
posted @ 2017-12-12 03:40 AWCXV 阅读(180) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 模拟。 看看Y左边或右边的点个数是否 【代码】 cpp include using namespace std; const int N = 1e5; int a[N+10]; int main(){ ifdef LOCAL_D 阅读全文
posted @ 2017-12-12 03:37 AWCXV 阅读(145) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 迭代加深搜。 很容易想到,最多只要搜8层就可以得到答案了 最多8下肯定可以还原。 则枚举一下最大层数。然后做个深搜就好。 优化。 设0..n每个数字的后继不为a[i]+1的个数为cnt 则每次操作显然最多只能减少3个cnt.. 阅读全文
posted @ 2017-12-11 16:01 AWCXV 阅读(173) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 对于没有出现的,当成0节点就好。 所以总是认为有3个人需要走到各自的终点。 将平面图转成点边图。这样比较好枚举。 (二维变成一维,模拟的时候变量都少了一半啦) 然后每次按照要求模拟走一下就好。 (三重循环,枚举每一个人下一步走到 阅读全文
posted @ 2017-12-11 06:36 AWCXV 阅读(163) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 三维显然可以缩短为2维。 只要知道a,b瓶中的水量,c瓶中的水量减一下就能得到。 则设dis[a][b]表示a,b瓶中水量为a,b时,水量的移动量。 然后做一下二维的spfa. 最后枚举a,b得到对应答案就好。 【代码】 cpp 阅读全文
posted @ 2017-12-10 16:23 AWCXV 阅读(176) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 秤砣都是在叶子节点。 可以把它看成一个二叉树。 则我们每次只需要选择任意两个"节点",让他们组成一棵二叉树就可以了。 然后虚拟出来一个节点,代表这个子树的根节点。 每次维护一下每个子树的左子树最左端离树的中心距离以及最右端离树的 阅读全文
posted @ 2017-12-06 20:19 AWCXV 阅读(257) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 因为每件衣服都是没有区别的。 只有洗衣机不同会影响洗衣时间。 那么我们把每台洗衣机洗衣的时间一开始都加入到队列中。 比如{2,3,6,7} 这个队列里面的数字就代表了如果某件衣服用这台洗衣机洗的话,要在什么时刻洗好。 对于每一件 阅读全文
posted @ 2017-12-06 11:14 AWCXV 阅读(115) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 暴力做就好。 O(8! 26^2) 【代码】 cpp / 1.Shoud it use long long ? 2.Have you ever test several sample(at least therr) yourse 阅读全文
posted @ 2017-12-06 08:27 AWCXV 阅读(188) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 每次枚举增加一个字符; 然后看看新生成的字符的后缀里面有没有出现连续子串就好,前面已经确认过的没必要重复确认 (枚举长度为偶数的一个后缀就好) 是输出完第64组且保证有第65组才要输出一个换行. 【代码】 阅读全文
posted @ 2017-12-05 13:35 AWCXV 阅读(141) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 预处理出所有的答案。 打表输出。 【代码】 阅读全文
posted @ 2017-12-05 12:29 AWCXV 阅读(136) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 x =y = 1x\frac{1}{x}=\frac{1}{k} \frac{1}{y}$ 结合两个式子可以得到 y 【代码】 cpp / 1.Shoud it use long long ? 2.Hav 阅读全文
posted @ 2017-12-02 06:33 AWCXV 阅读(131) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 C语言for循环练习题 【代码】 cpp / 1.Shoud it use long long ? 2.Have you ever test several sample(at least therr) yourself? 3. 阅读全文
posted @ 2017-12-02 06:23 AWCXV 阅读(106) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 枚举分母从0到99999. 得到分子,判断合法 【代码】 cpp / 1.Shoud it use long long ? 2.Have you ever test several sample(at least therr) 阅读全文
posted @ 2017-12-02 06:17 AWCXV 阅读(121) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示