A-calc

直接按照题目输出就行

#include<iostream>
using namespace std;
int main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);int a;cin>>a;cout<<a+a*a+a*a*a<<endl;return 0;}
B-Minor Change

题中默认肯定能够从S替换到T那么直接不相等的位置替换

#include<iostream>
using namespace std;
int main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);int res=0;string a,b;cin>>a>>b;for(int i=0;i<a.size();i++) res+=int(a[i]!=b[i]);cout<<res<<endl;return 0;
}

C-Tsundoku

前缀和+双指针
注意:最后一步枚举i一定要从0开始,可把我坑惨了!!!

#include<iostream>
#include<algorithm>
using namespace std;
typedef long long ll;
const int N=200010;
ll a[N],b[N];
int n,m;
ll k;
int main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);int res=0;cin>>n>>m>>k;for(int i=1;i<=n;i++) {cin>>a[i];a[i]+=a[i-1];}for(int i=1;i<=m;i++){cin>>b[i];b[i]+=b[i-1];}for(int i=0,j=m;i<=n;i++)//这里i一定要从0开始循环要不然会漏掉不在a数组中选数的情况{while(j&&a[i]>k-b[j]) j--;if(a[i]<=k-b[j]) res=max(res,i+j);}cout<<res<<endl;return 0;
}

就做了上面三个题太菜了-。-

D - Sum of Divisors

当时一看求质因数个数,就想到分解质因数求,发现复杂度O(n1.5)O(n^{1.5})O(n1.5)吃不消就没有然后了。。。
对于一个数,它是它倍数的因数,所以我们从1到N枚举一个数,加上它的所有倍数的和就可以算出答案了。

#include<iostream>
#include<algorithm>
#include<cstdio>
using namespace std;
typedef long long ll;
int n;
int main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);cin>>n;ll res=0;for(int i=1;i<=n;i++)for(int j=i;j<=n;j+=i) res+=j;//相当于乘kcout<<res<<endl;return 0;
}

E - NEQ

这两天补了数学的知识,发现好像可以看懂题解了。容斥原理,如果确定A的情况,那么B的合法情况可以用所有情况除去不合法情况,不合法情况可以用容斥原理求,最后乘以A的合法情况就可以了。
PS:注意输出

#define IO ios::sync_with_stdio(false);cin.tie();cout.tie(0)
#include<iostream>
#include<algorithm>
using namespace std;
typedef long long ll;
const int N=500005,mod=1e9+7;
int n,m,fact[N],infact[N];
int qmi(int a,int k,int p)
{int res=1;while(k){if(k&1) res=1ll*res*a%p;k>>=1;a=1ll*a*a%p;}return res;
}
void init()
{fact[0]=infact[0]=1;for(int i=1;i<=m;i++){fact[i]=1ll*fact[i-1]*i%mod;infact[i]=qmi(fact[i],mod-2,mod);}
}
int main()
{IO;cin>>n>>m;init();ll res=0;for(int i=0;i<=n;i++)   {if(i&1) res=(res-1ll*fact[n]*infact[i]%mod*infact[n-i]%mod*fact[m-i]%mod*infact[m-n]%mod)%mod;else res=(res+1ll*fact[n]*infact[i]%mod*infact[n-i]%mod*fact[m-i]%mod*infact[m-n]%mod)%mod;}for(int i=m-n+1;i<=m;i++) res=res*i%mod;//cout<<res%mod<<endl;这样输出一直wa第8个测试数据要输出正数,这样输出由于c++内部原因可能输出负数res%=mod;cout<<(res+mod)%mod<<endl;
}

哎我tcl剩下的题先放放吧。

AtCoder Beginner Contest 172总结相关推荐

  1. AtCoder Beginner Contest 172 E - NEQ(二项式反演)

    AtCoder Beginner Contest 172 E - NEQ 题意: 求满足下列条件的长度为 NNN且包含 [1,M][1, M][1,M]范围内整数的序列 A1,A2,⋯,ANA_1, ...

  2. AtCoder Beginner Contest 172 总结

    颓了三天端午回来打比赛,还是秒切前几道水题但做不动后面的难题,任重道远啊. 前四题思路都比较简单,C枚举一个数组的前缀和并用差值在另外一个数组里二分查找,D可以线性筛约数个数函数然后暴力算,也可以分析 ...

  3. AtCoder Beginner Contest 202 D - aab aba baa(组合计数,字典序)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Problem 有 AAA 和 aaa,BBB 个 bbb ,可以使用这 A+BA+BA+B 个字符任 ...

  4. AtCoder Beginner Contest 197 题解(A ~ F)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 A - Rotate B - Visibility C - ORXOR D - Opposite ...

  5. AtCoder Beginner Contest 198 (A ~ F)题解

    目录 A. Div B. Palindrome with leading zeros C. Compass Walking D. Send More Money E. Unique Color F. ...

  6. AtCoder Beginner Contest 215 G - Colorful Candies 2

    AtCoder Beginner Contest 215 G - Colorful Candies 2 有n个糖果,每个糖果有着一个颜色a[i],每次拿k个糖果期望拿到E(x)个不同颜色的糖果,求出k ...

  7. AtCoder Beginner Contest 215 F - Dist Max 2

    AtCoder Beginner Contest 215 F - Dist Max 2 平面上有一系列的点(xi,yi)(x_i,y_i)(xi​,yi​),定义两点(xi,yi),(xj,yj)(x ...

  8. AtCoder Beginner Contest 215 E - Chain Contestant

    AtCoder Beginner Contest 215 E - Chain Contestant 给出一个只包括A~J的字符串,定义一种子序列为:在这个子序列中,相同的字符必定连续出现,求出这样的子 ...

  9. AtCoder Beginner Contest 204 F Hanjo 2

    AtCoder Beginner Contest 204 F Hanjo 2 H宽,W长的二维平面上,用1 * 1或者2 * 1的地砖来铺,要求铺满,求出方案数. 数据范围H <= 6, W & ...

最新文章

  1. 也论标准: 统一是啥好事情?
  2. Coursera课程Python for everyone:chapter8
  3. python超时退出进程_Python如何实现让一个函数超时退出?
  4. Codevs 1519 过路费(Mst+Lca)
  5. Scala入门到精通——第十七节 类型参数(一)
  6. Qt路径中常用字符“./”、“../”、“/”、“*”的含义
  7. Nova Suspend/Rescue 操作详解 - 每天5分钟玩转 OpenStack(35)
  8. djnago 模型 新建对象id为空
  9. itext汇总 生成pdf
  10. .sql导入中文显示乱码解决方法
  11. ASP.NET中实现模版的动态加载(转)
  12. db2 reorg(转)
  13. 开源一个安信可A9g小项目微信小程序定位器项目①如何在windows10上环境搭建,编译烧录代码固件,查看运行日志;
  14. 大规模行人检索—PRCV2020竞赛发布
  15. 家谱整站源码php_基于PHP语言家谱网站设计与实现.doc
  16. Spark 小文件合并优化实践
  17. 标准差(Standard Deviation) 和 标准误差(Standard Error)
  18. Weighted Median
  19. 整理任正非思想:团结奋斗 再创华为佳绩-1994
  20. python面向对象练习——飞机大战

热门文章

  1. linux备份文件到ftp上,Linux服务器下用FTP上传下载备份文件
  2. php 下拉表单,PHP表单和填充下拉列表问题
  3. linux自动应答,08. 创建 ks.cfg自动应答文件
  4. mybatis mysql usegeneratedkeys_mybatis中useGeneratedKeys用法--插入数据库后获取主键值
  5. 算法题目——省份数量(dfs,bfs)
  6. 4位无符号比较器设计
  7. [JavaWeb-XML]XML约束概述
  8. 计算机用英语表示方法有哪些,在计算机领域中,通常用英文单词“bit”来表示( )...
  9. django mysql connector,MySQL Connector / python在Django中不起作用
  10. 对pca降维后的手写体数字图片数据分类_机器学习:数据的准备和探索——特征提取和降维...