
Atcoder
AKone123456
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
E - Picking Goods----------------------------思维(dp)
题意: 给定n*m的方格,给出k个(i,j)的ci权值 ,从(1,1)走到(n,m)的最大权值是多少 限制条件:每行最多只能选3个 解析: 设f[i][j][0~3]:表示走到(i,j) 第i行选了0~3个的最大值 从第i-1行选p个转移到第i行选p个 f[i][j][p]=max(f[i][j][p],f[i-1][j][p]) 从第j-1列选p个转移到第j列选p个 f[i][j][p]=max(f[i][j][p],f[i][j-1][p]) 从第j-1列选p-1个转移到第j列选p个 f[i][...原创 2020-08-17 11:48:52 · 287 阅读 · 0 评论 -
D - Sum of Divisors-----------------------思维(数论+逆向思维+枚举因子个数)
题意: 求出1~n中所有数的约数个数*i 解析: 想到求约数,但是O(nsqrt(n)) 超时了。 所以我们要逆向去思考,我们可以枚举i的倍数,就可以确定每个数的因子个数有多少了 时间复杂度:O(nlogn) #include<bits/stdc++.h> using namespace std; typedef long long ll; const int N=1e7+10; ll f[N]; int n; int main() { cin>>n; for(int i=...原创 2020-07-07 23:59:11 · 922 阅读 · 0 评论 -
D - Div Game-------------------------------思维(质因数分解)
解析: 质因数分解 由题意可知,N%z==0 && z=p^e p要是素数 所以我们质因数分解N N=p0e0 * p1e1 * p2e2 *…*pnen 对于p0e0 我们可以分解多少个不同的数呢。 我们按照幂次e0 分成 1+2+3+…+x=e0; 那么这样分的数都是不会相同的 对于每个e,我只要这样计算累加起来即可 #include<bits/stdc++.h> using namespace std; typedef long long ll; ll x;...原创 2020-06-05 16:22:23 · 291 阅读 · 0 评论