BZOJ3505 [Cqoi2014]数三角形 数学
来源:互联网 发布:编程加工工艺图片 编辑:程序博客网 时间:2024/05/21 15:47
总数是
斜着的可以用gcd枚举 对于一个长i宽j的矩形 计算出他的对角线 有s个整数点 则该对角线的贡献是s-2(对角线上的两个顶点和其之间的一的点) 再计算出总共有多少的这么大的矩形 求和就好啦
#include<bits/stdc++.h>#define bug(x) cout<<(#x)<<" "<<(x)<<endl#define ll long long/*char *TT,*mo,but[(1<<15)+2];#define getchar() ((TT==mo&&(mo=(TT=but)+fread(but,1,1<<15,stdin),TT==mo))?-1:*TT++)//*/using namespace std;const int N=1e6+5;inline int read(){ int x=0,f=1;char ch=getchar(); while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();} while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();} return x*f;}ll n,m,c[N][4],ans;int main(){#ifdef Devil_Gary freopen("in.txt","r",stdin);#endif n=read()+1,m=read()+1; if(n>m) swap(n,m); c[0][0]=1; for(int i=1;i<=n*m;i++){ c[i][0]=1; for(int j=1;j<=3;j++) c[i][j]=c[i-1][j-1]+c[i-1][j]; } ans=c[n*m][3]-n*c[m][3]-m*c[n][3]; for(int i=1;i<n;i++)for(int j=1;j<m;j++){ int tmp=__gcd(i,j)+1; if(tmp>2) ans-=(tmp-2)*2*(n-i)*(m-j); } cout<<ans<<endl;}
阅读全文
0 0
- 【bzoj3505】 CQOI2014数三角形 数学
- BZOJ3505 [Cqoi2014]数三角形 数学
- 【bzoj3505】【CQOI2014】【数三角形】【组合数学】
- 组合数学+gcd BZOJ3505 [Cqoi2014]数三角形
- [Bzoj3505][Cqoi2014]数三角形
- bzoj3505 [Cqoi2014]数三角形
- bzoj3505: [Cqoi2014]数三角形
- bzoj3505 [Cqoi2014]数三角形
- 【CQOI2014】【BZOJ3505】数三角形
- bzoj3505【CQOI2014】数三角形
- bzoj3505: [Cqoi2014]数三角形
- 【bzoj3505】[Cqoi2014]数三角形
- bzoj3505 [Cqoi2014]数三角形
- bzoj3505 [Cqoi2014]数三角形
- BZOJ3505 [Cqoi2014]数三角形
- [BZOJ3505][Cqoi2014]数三角形(组合数学+gcd)
- bzoj3505 [Cqoi2014]数三角形 题解
- BZOJ3505: [Cqoi2014]数三角形 解题报告
- 电脑插上U盘双击打不开应用程序右键可以打开问题
- oracle备份空表不能导出问题
- 每天一个linux命令(8):cp 命令
- 【js基础】javascript基础巩固——基础概念&作用域&内存(一)
- Android camera2使用
- BZOJ3505 [Cqoi2014]数三角形 数学
- Android 进阶
- 文章标题
- python django get请求传参
- 软件调试笔记57
- 小学生开始学Python,还有什么能够阻挡我对Python的向往?
- win10安装tensorflow
- 淘宝客网站为什么会被腾讯拦截
- Linux终端操作mysql常用命令