03 2020 档案
摘要:题意:http://codeforces.com/problemset/problem/296/B 有一个位置ai<bi,有一个位置ai>bi的串的数量。 思路: 总数-全小于等于-全大于等于+全相等 1 #define IOS ios_base::sync_with_stdio(0); cin.t
阅读全文
摘要:题意:http://codeforces.com/problemset/problem/295/D 思路: 可以把图形看成上下两个金字塔(极端情况下长方形),dp出以i的长为底,以j为高的三角形数(长方形),再预处理前缀(以i的长为底,以<=j为高),然后就枚举中心行,上下金字塔数相乘,注意两个图形
阅读全文
摘要:题意:http://codeforces.com/problemset/problem/456/E 思路: 并查集被坑到了,得用路径压缩。 1 #define IOS ios_base::sync_with_stdio(0); cin.tie(0); 2 #include <cstdio>//spr
阅读全文
摘要:题意:http://codeforces.com/problemset/problem/456/D 两个人玩游戏。游戏是拼单词,给出了一个含有n个单词的词库。当前单词初始为空,每个人轮流给它末尾加一个字母,要求当前单词是词库中任意一个词的前缀,当某个人不能加字母了他就输。这个游戏重复k局,一局输的人
阅读全文
摘要:int Find(int xa){ int xb=xa; //把初始值赋给b while(xa!=fa[xa]){ xa=fa[xa]; //找到a的祖先节点 } while(xb!=xa){ //直到b==a为止 int temp=fa[xb]; //设一个中间变量为b的父亲节点 fa[xb]=x
阅读全文
摘要:题意:http://codeforces.com/problemset/problem/300/E 问你最小的n,满足 n!整除 ∏ a【i】! 思路: 套路写法是筛出所有素因子,数量统计好 然后二分判断答案里是否有足够的因子数。 二分上界注意一下:(n+m)! /(n!*m!) =C(n+m,m)
阅读全文
摘要:题意:http://codeforces.com/problemset/problem/1323/D 题目见图就懂 思路: 一般这种题都是枚举二进制的位。假设现在我们要知道第k位0/1,易知,我们枚举ai,那么2^(k-1)~2^k-1和大于2^k+2^(k-1)的答案都是可以的,所以我们查询在区间
阅读全文
摘要:题意:http://codeforces.com/problemset/problem/300/D 四分树 分k次的所有种类数,层数有限制 思路: 可以根据二叉树推广,不停往上加点的思想 (https://www.cnblogs.com/CJLHY/p/11099739.html) 首先讲dp: 从
阅读全文
摘要:题意:http://codeforces.com/problemset/problem/717/G 给出一个母串,m个子串,同一个子串在母串的同一个位置只能匹配一次,成功匹配可以获得vi的值,母串的每个位置也有最多使用次数k。 问你最大值。 思路: 见FileRecv\春**解.docx 1 #de
阅读全文
摘要:题意:https://codeforces.com/problemset/problem/426/D 有一个矩阵,只含01,你现在最多修改k次,使得矩阵所有01连通块都是矩形。问你最少改几次。n<=100,m<=100,k<=10 思路: 首先确定了一行我们就知道下面几行如果要合法的话就必须与之相同
阅读全文
摘要:题意:https://codeforces.com/problemset/problem/1316/F 给你n个数,有2^n个子集,每个子集的计算公式是a1a2+a2a3+⋯+ak−1ak(必须递增),当然子集大小小于1的没有值。 再给你m个操作,把第i个换成x。 思路: 发现答案是一些ai*aj的
阅读全文
摘要:题意:http://codeforces.com/problemset/problem/852/E 思路:https://www.cnblogs.com/LeTri/p/10318669.html 很不错了 但是一直往树形dp上想而且菜到写不出 代码就不贴了
阅读全文
摘要:题意:https://codeforces.com/problemset/problem/575/H 思路:Ci j +C i+1 j == C i+1 j+1 代码就不贴了
阅读全文
摘要:题意:https://codeforces.com/contest/1316/problem/E?csrf_token=0963fae4dc3b2bb886fa535d67322918 思路: 首先,如果告诉你p+k==n是很好做的,简单dp 但是p+k可能<n,这就要删掉一些观众。v 解:dp【i
阅读全文
摘要:题意:http://codeforces.com/contest/1316/problem/C 就是两个多项式,问你相乘后,有几项%p==0; 思路: 从第0项开始推,如果a0*b0%p==0,则a0%p==0||b0%p==0; 第一项是a0*b1+a1*b0,如果第0项是p的倍数,那第一项里至少
阅读全文
摘要:题意:http://codeforces.com/contest/1323/problem/B 思路: 先预处理可能的矩阵,用pair配对配好 假设竖着的有n根,横着的有m根,一共n*m个矩形。也就是说每两根都有机会两两结合 那就把单独一根的数量算好,最后相乘就行了 1 #define IOS io
阅读全文
摘要:题意:https://codeforces.com/contest/252/problem/B 交换一对数字,使n个数无序 思路: 该算法的复杂度为O(N3)。实际上它不是真的,真正的复杂度是O(N)可以注意到,在每个长度大于3的数组中,至少有3对不同的数字(请记住,我们假设数组中至少存在一对不同的
阅读全文
摘要:题意:含13子串且整除13的个数 思路: n-不含13-不整除13+既不也不13(容斥) 1 #define IOS ios_base::sync_with_stdio(0); cin.tie(0); 2 #include <cstdio>//sprintf islower isupper 3 #i
阅读全文
摘要:题意:http://acm.hdu.edu.cn/showproblem.php?pid=4571 n个景点,m条路,总时间t,起始城市s,终点城市e,接下来给出浏览各个城市的时间,然后给出各个城市浏览后的满意程度。然后是m条路的信息。要求选择浏览方式,使得总的满意程度最大,经过一个城市可以选择不去
阅读全文