首届华中区程序设计邀请赛暨第十届武汉大学程序设计大赛网络预赛A题(HDOJ-4215)
2012-04-15 17:40
260 查看
比赛的时候最后时间专注1010去了..最后十分钟才想起1001应该能打表..结果没搞得赢..赛后果断AC阿...这题..好恶心..
其实对于这一类的N很大的问题..就要有大表找规律的思维..或者找到通项公式..或者找到递推关系利用矩阵乘法..而本题就是..N<=30时暴力枚举出结果..N>30...结果都是10...囧...
Program:
其实对于这一类的N很大的问题..就要有大表找规律的思维..或者找到通项公式..或者找到递推关系利用矩阵乘法..而本题就是..N<=30时暴力枚举出结果..N>30...结果都是10...囧...
Program:
#include<iostream> #include<string.h> #include<stdio.h> #include<algorithm> #include<math.h> #include<queue> using namespace std; int f[35],e[35],s[35],i,j,k,m,N,ans,l,r,m1,m2,T,t; int gcd(int a,int b) { if (!b) return a; return gcd(b,a%b); } int main() { memset(e,0,sizeof(e)); for (i=1;i<=31;i++) for (j=1;j<=i;j++) if (gcd(i,j)==1) e[i]++; memset(f,0,sizeof(f)); for (i=1;i<=31;i++) for (j=1;j<=i;j++) if (i%j==0) f[i]++; for (N=1;N<=31;N++) { ans=0; for (l=1;l<=N;l++) for (r=l;r<=N;r++) { m1=m2=0; for (i=l;i<=r;i++) { m1+=e[i]; m2+=f[i]; } if (m1==m2) ans++; } s =ans; } scanf("%d",&T); for (t=1;t<=T;t++) { scanf("%d",&i); printf("Case %d: ",t); if (i<=30) printf("%d\n",s[i]); else printf("10\n"); } return 0; }
相关文章推荐
- 首届华中区程序设计邀请赛暨第十届武汉大学程序设计大赛网络预赛I题(HDOJ-4223)
- 首届华中区程序设计邀请赛暨第十届武汉大学程序设计大赛网络预赛G题(HDOJ-4221)
- 首届华中区程序设计邀请赛暨第十届武汉大学程序设计大赛网络预赛C题(HDOJ-4217)
- 首届华中区程序设计邀请赛暨第十届武汉大学程序设计大赛训练总结【8/11】
- HDU4223&&NYOJ422 首届华中区程序设计邀请赛暨第十届武汉大学程序设计大赛
- 第二届华中区程序设计邀请赛暨武汉大学第十一届校赛 网络预选赛 解题报告
- 第五届华中区程序设计邀请赛暨武汉大学第十四届校赛 网络预选赛 E Calculation 状态压缩DP枚举子集
- 15.4.19 第四届华中区程序设计邀请赛暨武汉大学第十三届校赛 网络预选赛
- 第五届华中区程序设计邀请赛暨武汉大学第十四届校赛 网络预选赛
- 第二届华中区程序设计邀请赛暨武汉大学第十一届校赛 网络预选赛 解题报告
- 第二届华中区程序设计邀请赛暨武汉大学第十一届校赛 网络预选赛 解题报告
- 第五届华中区程序设计邀请赛暨武汉大学第十四届校赛 网络预选赛
- 第四届华中区程序设计邀请赛暨武汉大学第十三届校赛 网络预选赛 Problem 1566 - C - Spanning Tree
- 第三届华中区程序设计邀请赛暨武汉大学第十二届校赛 网络预选赛 水题解题报告
- 第四届华中区程序设计邀请赛暨武汉大学第十三届校赛 网络预选赛
- 第五届华中区程序设计邀请赛暨武汉大学第十四届校赛 网络预选赛 A
- 第五届华中区程序设计邀请赛暨武汉大学第十四届校赛 网络预选赛 A Minimum Sum 树状数组
- 第五届华中区程序设计邀请赛 网络赛Calculation E 【状压dp】
- 首届华中区程序设计邀请赛总结
- 第八届北航程序设计大赛网络预赛 解题目报告