摘要:题意:求 k 层嵌套的 f(x) 0<=x,k<=1e9 思路:迭代不会很多次后函数里就会=0或者1,再看层数奇偶直接返回答案
阅读全文
摘要:题意:DG在书店买书,从左到右第i本书价格为ai。 DG从左走到右,能买就买。如果已知DG买了m本书,问他原本最多有多少钱。 若无上限,输出“Richman”,若不可能买这么多书,输出“Impossible”。 1 ≤ n ≤ 105,0 ≤ m ≤ n,0 ≤ ai ≤ 109。 思路:价格为0的
阅读全文
摘要:题意:有n个植物排成一排,标号为1-n,每株植物有自己的生长速度ai,每对植物浇一次水,该株植物就长高ai, 现在机器人从第0个格子出发,每次走一步,不能停留,每一步浇一次水,总共可以走m步,问最矮的植物最高是多少。 n<=1e6,sigma n<=1e7,0<=m<=1e12,1<=a[i]<=1
阅读全文
摘要:题意:给定两个长度为n的01序列A和B,要求分别从两个序列中取两段将段中数字取反,使得A和B完全相同,求方案数 n<=1e6,sum(n)<=1e7 思路:现场8Y…… 将A和B异或之后问题转化成了在一个01串中取两端,将段中数字取反,使得最终为全0序列,求方案数 找规律之后可得与连续的1的段数有关
阅读全文
摘要:题意:NxM的格子有些上面有数字,现在要把奇数跟偶数配对连起来,其他的格子连成一个个回路, 单独的相邻两个格子相连也算是一个回路按两条边算,连线不能相交, 给出相邻两个格子相连的费用,求最小的总费用,无解输出-1 n,m<=50 保证答案在int范围之内 思路:费用流神仙建模 From https:
阅读全文
摘要:题意:给定n和a[i](i=0..4),求所有n位5进制数中没有前导0且i出现的次数不超过a[i]的数的个数 2<=n<=15000,0<=a[i]<=3e4 思路:设f(n,a,b,c,d,e)为可以含前导0的答案 则ANS=f(n,a,b,c,d,e)-f(n-1,a-1,b,c,d,e) 考虑
阅读全文
摘要:题意:给你n个二元组<a,b>, m个三元组<c,d,e>. 如果d = e,那么<a,c,d>会组成一个新的三元组集合G. 问G中有多少个三元组在凸点.(没有其它三元组比它大) 定义大为一个三维偏序的关系,若(x,y,z)与(a,b,c)不完全相同并且x>=y,y>=b,z>=c则描述为(x,y,
阅读全文
摘要:题意:n个青蛙在一个有m个节点的圆上跳,m个节点的标号为0-m-1,每只青蛙每次跳的节点数给出,让求n只青蛙所跳位置标号之和 n<=1e4,m<=1e9,a[i]<=1e9 思路:由裴蜀定理可知该问题等价于[0,m-1]能被至少一个gcd(m,a[i])整除的数字之和 因为n过大,考虑与m的因子个数
阅读全文
摘要:题意:设f(i)为0<=x,y<=i-1且xy%i=0的(x,y)对数,g(i)为sigma f(j) [i%j==0] 给定n,求g(n),答案对2^64取模 T<=2e4,n<=1e9 思路:这题坚定了我要找一个专业数学手的决心…… x,y从[0,i-1]等价于从[1,i] From Gold_
阅读全文
摘要:题意:给你一个NxN的网格,第N行的每一列都有个青蛙,这些青蛙只会往上走, 上帝会在每个膜中随机等概率放一个长生不老的药, 一共有N个膜,每个膜覆盖一些区间,如果这个区间恰好为N那么就是好膜,否则是坏膜,每个青蛙最多只能穿过10个坏膜, 问全部青蛙吃到药,并全部到顶层的概率*∏Ni=1(Ri−Li+
阅读全文
摘要:题意:给定n,m,k,要求构造出一个长度为n,最多使用前k个大写字母,有m个不同回文子串的字符串 1<=n,m<=1e5,1<=k<=26 思路:打表找规律 本质上是要找到不让循环节之间出现新回文子串的方案 n<m:无解 n=m:全A n>m:k=1:无解 k=2:用m-8个A + ABAABB(循
阅读全文
摘要:题意:给定一个长度为n的下标从0开始的小写字母字符串,每次对于当前的i寻找一个j使得后缀i与后缀j的lcp最大,(j<i)若lcp相同则取较小的 若lcp为0则输出0与当前字符,i自增1,否则输出lcp的值与j,i自增lcp的值,以上过程重复直到i>=n 要求模拟这个过程 n<=1e5,sigma
阅读全文
摘要:题意:有一个n*m的矩阵,每个矩阵里有一个数字a[i][j]。现在要求将其中一个格子的值改为p,使得修改后矩阵的最大子矩阵和最小,求这个最小值 n,m<=150,abs(a[i][j])<=1e3 思路:学习cf,也把这种题叫DP了…… 考虑如何快速求出修改后最大子矩阵的值 最大子矩阵有一个O(n^
阅读全文
摘要:题意:A和B玩一个游戏:A在[L,R]之间随机选取一个数X,之后由B来猜这个数, 如果猜的数比X小,则A就告诉B你猜的数小了, 如果猜的数等于X则游戏结束, 如果猜的数大于X,则在这之后A只会回答B是否猜对了,而不会告诉B是否猜小了。 问:在最坏的情况下,B猜到X时最少需要猜多少次,并输出方案数对1
阅读全文
摘要:题意:给定n个区间,第i个区间的范围是[i-lowbit(i)+1,i]。一共有q组询问,询问有两种: 1 x y:询问sigma lowbit(i) (x<=i<=y) 2.x:询问有几个区间包含x这个下标 思路:先打一个lowbit的表找一下规律 考虑第一种询问,能将它拆成两个询问calc(x-
阅读全文
摘要:思路:有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。 游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。 最后把石子全部取完者为胜者。 现在给出初始的两堆石子的数目,如果轮到你先取,假设双方都采取最好的策略,问最后你是胜者还
阅读全文
摘要:题意:给你N位数,接下来有N行,第i行先输入n,表示这个数的第i 位上可以在接下来的n个数中挑选,然后i 行再输n个数。 然后输入需要匹配的母串,让你输出母串中有多少个可行的N位子串。 n<=1e3,len<=5e6 思路:From https://blog.csdn.net/no201521409
阅读全文
摘要:题意:给定一棵n个点的树,每个节点上有一种颜色a[i],一共有k种颜色,问包含所有颜色的路径条数 n<=5e4,k<=10 思路:点分治求方案数 集合并卷积的时候暴力枚举状态即可O(n^logn*2^k) 75e的复杂度 只跑了1.7s 我也是醉了
阅读全文
摘要:题意:给定n,要求构造若干个各不相同且和为n的正整数使得它们的乘积最大 T<=1e6,1<=n<=1e9 思路:From https://blog.csdn.net/qq_34374664/article/details/53466435
阅读全文
摘要:题意:有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。 游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。 最后把石子全部取完者为胜者。现在给出初始的两堆石子的数目,如果轮到你先取,假设双方都采取最好的策略,问最后你是胜者还是
阅读全文
摘要:题意:A和B两个人做一个拍卖游戏。每一轮两人分别给出一个价格,出价高者获得该轮的物品,出价相同则奇数轮A优先,偶数轮B优先。 两个人的目标都是最大化自己的商品数量,给定轮数n与两人分别的总资金a,b,问都按最优策略行动下两人分别能获得多少物品 n,a,b<=255 思路:From https://w
阅读全文
摘要:题意:有一棵n个点的有根树,每条边上有一个边权。给定P,从i跳到它的祖先j的费用是距离的平方+P,问所有点中到根节点1的总花费最大值 n<=1e5,p<=1e6,w<=1e2 思路:对于根节点到每个点i的路径上是一个下凸壳,是经典的斜率优化 考虑在dfs时维护这个下凸壳,在斜率优化加入与删除点时记录
阅读全文
摘要:题意:dingyeye喜欢和你玩石子游戏。dingyeye有一棵n个节点的有根树,节点编号为0到n−1,根为0号节点。 游戏开始时,第i个节点上有a[i]个石子。两位玩家轮流操作,每次操作玩家可以选择一个节点,并将该节点上的一些石子(个数不能为0)移动到它的父亲节点上去。 如果轮到某位玩家时,该玩家
阅读全文
摘要:题意:在研究过Nim游戏及各种变种之后,Orez又发现了一种全新的取石子游戏,这个游戏是这样的: 有n堆石子,将这n堆石子摆成一排。游戏由两个人进行,两人轮流操作,每次操作者都可以从最左或最右的一堆中取出若干颗石子, 可以将那一堆全部取掉,但不能不取,不能操作的人就输了。 Orez问:对于任意给出一
阅读全文
摘要:题意: Alice和Bob两个好朋含友又开始玩取石子了。游戏开始时,有N堆石子排成一排,然后他们轮流操作(Alice先手),每次操作时从下面的规则中任选一个:1:从某堆石子中取走一个2:合并任意两堆石子不能操作的人输。Alice想知道,她是否能有必胜策略T<=100, N<=50. ai<=1000
阅读全文
摘要:题意:TBL和X用巧克力棒玩游戏。每次一人可以从盒子里取出若干条巧克力棒,或是将一根取出的巧克力棒吃掉正整数长度。 TBL先手两人轮流,无法操作的人输。 他们以最佳策略一共进行了10轮(每次一盒)。你能预测胜负吗? 如果TBL胜则输出”NO”,否则输出”YES” n<=14,a[i]<=1e9 思路
阅读全文
摘要:题意:小H和小Z正在玩一个取石子游戏。 取石子游戏的规则是这样的,每个人每次可以从一堆石子中取出若干个石子, 每次取石子的个数有限制,谁不能取石子时就会输掉游戏。 小H先进行操作, 他想问你他是否有必胜策略,如果有,第一步如何取石子 n<=10,a[i]<=1000,m<=10,b[i]<=10 思
阅读全文
摘要:假如把Nim游戏的取胜规则改为谁取走最后一个石子谁输的话 先手必胜当且仅当: 1.所有堆的石子数都为1且游戏的SG值为0 2.有些堆的石子数大于1且游戏的SG值不为0
阅读全文
摘要:题意:有n个格子排成一行,其中一些格子里面有字符X。两个游戏者轮流操作,每次可以选一个空格,在里面放上字符X。 如果此时有3个连续的X出现,则该游戏者赢得比赛。初始条件下不会有3个X连续出现。 判断先手胜负情况,若必胜则升序输出先手第一步的所有可选必胜策略 n<=200 思路:如果有XX或者X.X出
阅读全文
摘要:题意:有n堆石子,分别有a[i]个。两个游戏者轮流操作,每次可以选一堆,拿走至少一个石子,但不能拿走超过一半的石子。 谁不能拿石子就算输,问先手胜负情况 n<=100,1<=a[i]<=2e18 思路:打表找SG函数的规律 当n为偶数时,SG(n)=n/2 当n为奇数时,SG(n)=SG(n/2)
阅读全文
摘要:题意:给定一个n*m的矩阵,两个游戏者轮流操作。 每次可以选一行中的1个或多个大于1的整数,把它们中的每个数都变成它的某个真因子,不能操作的输。 问先手能否获胜 n,m<=50,2<=a[i][j]<=10000 思路:考虑每个数包含的质因子个数,则让一个数“变成它的真因子”等价于拿掉它的一个或多个
阅读全文
摘要:01: 02: 03:贪心,每次塞到人最多的能塞下的车里,不行就开新车 04:按增加的攻击力贪心 05: 06: 07:每个询问是连续的一段,二分起点和终点 08:dp[i][j]表示积分为i,当前j朝上的最小步数 09:我的写法是完全背包转多重背包O(n^3),用调和级数把一个O(n^2)优化成O
阅读全文
摘要:题意:给定一个2*n的矩阵,每一个点有一个权值,从左上角出发,时间t=0开始,连续的走,将矩阵走完, 每走一步,t++,并且得到t*当前格子的权值的值,求最大的权值和 n<=3e5,1<=a[i][j]<=1e6 思路:合法的构造方案如图 记录几个前缀和,真的不想写这种题
阅读全文
摘要:题意:给定一个只由左右括号组成的字符串s,问长度为2*n的包含它的合法括号序列方案数,答案对1e9+7取模 1≤n≤100,1≤|s|≤200 思路:暴力预处理出s的每个前缀[0..i]后加左右括号分别能与原序列最长匹配到的位置,这一步也可以用KMP 设dp[i][j][k][l]为当前到第i位,未
阅读全文
摘要:题意:给定一个n×m大小的字符矩阵,仅由‘.’和‘*’组成,询问这个图可否划分为一些由‘*’组成的十字形状,这些十字之间可以有重叠, 如果存在方案则输出每个十字中心坐标与边长度,无解输出-1 n,m<=1e3 思路:感觉挺独特的一个思路,并没有能力完全自主推导,还是翻译一下题解…… 因为任意一组方案
阅读全文
摘要:题意:给定一个N位的由[0..9]组成的数字串和质数P,有M次不强制在线的询问,每次询问区间[l,r]中模P意义下为0的子串个数 N,M<=2e5,P<=1e10 思路:一次A,本来还以为要调好长时间…… 考虑类似于字符串哈希的思路,预处理出每个后缀在模P意义下的余数,设从第i位到第N位的后缀的值为
阅读全文
摘要:题意: n<=100000,ai<=2*10^9 思路:按二进制逐位考虑,只要有至少1位取and后为1就可以接下去 设dp[i]为第i位取and之后为1的最长的序列长度,意会一下
阅读全文
摘要:题意: 给定数列的定义: 1.每个元素都是正整数 2.每个元素不能超过M 3.相邻两个元素的差的绝对值必须是1 4.第一个元素的值必须是1 求有多少个长度不超过N的合法的本质不同的序列 两个序列本质不同,当且仅当存在至少一个数值,在两个序列中出现次数不一样 比如{1,2,3}和{1,3,2}是本质相
阅读全文
摘要:题意:有一棵n个结点的只由小写字母组成的Trie树,给定它的具体形态,问删除哪一层后剩下Trie树的结点数最少 n<=3e5 思路:先建出原Trie树,对于每一层的每一个结点计算删除后对答案的贡献,这一部分使用启发式合并 官方题解证明了时间复杂度是一个log的 http://codeforces.c
阅读全文