PAT Advanced Level (1077~1080)
来源:互联网 发布:淘宝禁止发布 编辑:程序博客网 时间:2024/05/29 05:04
PAT 1077 Kuchiguse
链接:http://www.patest.cn/contests/pat-a-practise/1077
代码:
#include<iostream>#include<string>#include<cstdio>#include<cstring>#include<set>#include<algorithm>using namespace std;int main(){ int n; char s[300]; string basic,nex; scanf("%d",&n); getchar(); gets(s); basic=string(s); reverse(basic.begin(),basic.end()); for(int i=1;i<n;++i) { int idx=0; gets(s); nex=string(s); reverse(nex.begin(),nex.end()); for(;idx<nex.length()&&idx<basic.length();++idx) if(nex[idx]!=basic[idx]) break; basic=basic.substr(0,idx); } if(basic.length()>0) { reverse(basic.begin(),basic.end()); printf("%s\n",basic.c_str()); } else { printf("nai\n"); } return 0;}
PAT 1078 Hashing
链接: http://www.patest.cn/contests/pat-a-practise/1078
代码:
#include<iostream>#include<string>#include<cstdio>#include<cstring>#include<set>#include<cmath>#include<algorithm>using namespace std;int h[10105];bool flag[10105];void calPrime(){ memset(flag,false,sizeof(flag)); flag[0]=flag[1]=true; for(int i=3; i<sqrt(10105)+1; i+=2) { if(flag[i]==false) { for(int j=i+i; j<10105; j+=i) flag[j]=true; } }}int main(){ int n,m,a; memset(h,-1,sizeof(h)); calPrime(); scanf("%d%d",&m,&n); if(m<=2) m=2; else { if(m%2==0) ++m; for(; m<10055; m+=2) if(flag[m]==false) break; } //printf("%d\n",m); for(int k=0; k<n; ++k) { scanf("%d",&a); int idx=a%m; if(h[idx]==-1) { if(k==0) printf("%d",idx); else printf(" %d",idx); h[idx]=a; } else { bool flag=false; for(int i=1; i<m; ++i) { idx=(a+i*i)%m; if(h[idx]==-1) { if(k==0) printf("%d",idx); else printf(" %d",idx); h[idx]=a; flag=true; break; } } if(flag==false) { if(k==0) printf("-"); else printf(" -"); } } } return 0;}
PAT 1079 Total Sales of Supply Chain
链接: http://www.patest.cn/contests/pat-a-practise/1079
代码:
#include<iostream>#include<string>#include<cstdio>#include<cstring>#include<vector>#include<set>#include<cmath>#include<algorithm>using namespace std;struct node{ int num;//货物数量 int high;//高度 vector<int> sons;}nodes[100005];void dfs(int idx){ int len=nodes[idx].sons.size(); for(int i=0,j;i<len;++i) { j=nodes[idx].sons[i]; nodes[j].high=nodes[idx].high+1; dfs(j); }}int main(){ int n,a,b; double p,r,summ=0; scanf("%d%lf%lf",&n,&p,&r); r=1+r/100; nodes[0].high=0; for(int i=0;i<n;++i) { scanf("%d",&a); if(a==0) { scanf("%d",&nodes[i].num); } else { for(int j=0;j<a;++j) { scanf("%d",&b); nodes[i].sons.push_back(b); nodes[i].num=0; } } } dfs(0); for(int i=0;i<n;++i) if(nodes[i].num!=0) { summ+=(pow(r,nodes[i].high)*nodes[i].num); //printf("%d %d %d\n",i,nodes[i].high,nodes[i].num); } printf("%.1f\n",summ*p); return 0;}
PAT 1080 Graduate Admission
链接: http://www.patest.cn/contests/pat-a-practise/1080
代码:
0 0
- PAT Advanced Level (1077~1080)
- PAT Advanced Level 1077
- PAT Advanced Level 1080
- Pat(Advanced Level)Practice--1077(Kuchiguse)
- PAT (Advanced Level) Practise 1077Kuchiguse (20)
- PAT (Advanced Level) Practise 1077 Kuchiguse (20)
- Pat(Advanced Level)Practice--1080(Graduate Admission)
- PAT Advanced Level 1078
- PAT Advanced Level 1079
- PAT Advanced Level 1010
- PAT Advanced Level 1016
- PAT Advanced Level 1018
- PAT Advanced Level 1039
- PAT Advanced Level 1060
- PAT Advanced Level 1026
- PAT Advanced Level 1029
- PAT Advanced Level 1030
- PAT Advanced Level 1033
- ios UILabel设置居上对齐,居中对齐,居下对齐
- 深入浅出Linux-GNU的创立(2)
- android genymotion模拟器怎么使用以及和google提供的模拟器性能对比
- 杭电 1018
- 基于HT for Web的3D呈现A* Search Algorithm
- PAT Advanced Level (1077~1080)
- 1:ODBC连接数据库的流程 2:访问数据库的基本流程3:使用ReseltSet 的基本流程 javac程序连接数据库源代码
- hdu 2519 新生晚会 排列组合基础
- [leetcode]Trapping Rain Water
- 视频摘要技术非常有应用前景的方向
- Eclipse+EPIC+padwalker配置
- ios UITableView中行的操作
- 【BZOJ1036】【ZJOI2008】树的统计Count 树链剖分裸题
- java 的io