摘要: 这题只需要记录到当前位,之前总共有多少个1即可 因为首先这满足记忆化的条件,也就是可以在计算过的情况下直接范围答案 其次,我们现在需要理解的是,当我们计算出了这个之后,答案是可以直接累乘的 因为在某个数之后计算的所有数,最大值不超过他,也就是他这位所管辖的所有答案。 所以我们可以想到,这样其实就是把 阅读全文
posted @ 2020-08-20 23:16 朝暮不思 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 数字太大,找找规律比较好。 #include<bits/stdc++.h> using namespace std; typedef long long ll; const int N=1e5+10; const int mod=1e9+7; int main(){ ios::sync_with_s 阅读全文
posted @ 2020-08-20 21:43 朝暮不思 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 这道题我们首先发现因为最多就一个地方不一样,因此其实最终的答案就是n+1个字符串所产生的,也就是对于给定串,只改一位以及原串加入字典树 之后的做法和一道经典例题(文本打印机)一毛一样,就是枚举在哪个节点跑ac自动机+dp #include<bits/stdc++.h> using namespace 阅读全文
posted @ 2020-08-20 20:40 朝暮不思 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 本来想对行列都维护线段树,然后每次查询两棵的最大值,之后进行修改。但是要考虑很多问题,例如最大值相同的时候选哪个,这些细节操作起来十分复杂,我也不知道是否可行 有一种巧妙的思路,我们发现取行对于取其他行没有影响,只对当前行有影响。因此就是用优先队列来分别计算选i次行,i次列的答案。 之后枚举选行的次 阅读全文
posted @ 2020-08-20 11:25 朝暮不思 阅读(104) 评论(0) 推荐(0) 编辑