PAT
eeetttzhangji
这个作者很懒,什么都没留下…
展开
-
1008 数组元素循环右移问题 (数组移动)
一个数组A中存有N(>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(≥0)个位置,即将A中的数据由(A0A1⋯AN−1)变换为(AN−M⋯AN−1A0A1⋯AN−M−1)(最后M个数循环移至最前面的M个位置)。如果需要考虑程序移动数据的次数尽量少,要如何设计移动的方法? 输入格式: 每个输入包含一个测试用例,第1行...转载 2019-03-16 01:06:08 · 160 阅读 · 0 评论 -
1029 旧键盘
#include int main() { char a[81]; char b[81]; char c[80]; gets(a); gets(b); char * pa=a; char * pb=b; int i,j; int k=0; int flag=0; while(*pb != '\0') { pa=a; for(pa;*原创 2016-08-26 16:17:20 · 196 阅读 · 0 评论 -
1028 人口普查
#include typedef struct skt { char name[10]; int year; int month; int day; }birthday; int jianyan1(birthday p); int jianyan2(birthday p); int main() { birthday older; birthday younger;原创 2016-08-25 20:34:58 · 195 阅读 · 0 评论 -
1027 打印沙漏
#include int sum(int k); int main() { int a; char c; int i,j; int flag; int k=0; scanf("%d %c",&a,&c); for(i=1;sum(i)2); i-=2; flag=i; if(sum(i)==a) { for(i;i>=1;i-=2)原创 2016-08-26 16:16:46 · 196 阅读 · 0 评论 -
1026 程序运行时间
#include #define CLK_TCK 100 int main() { double a, b; int result; scanf("%lf%lf",&a,&b); result=(int)((b-a)/CLK_TCK + 0.5); int hour,minute,sec; hour=result/3600; result%=3600; minut原创 2016-08-26 16:16:30 · 198 阅读 · 0 评论 -
1025 反转链表
#include #include typedef struct skt { int we; int date; int next; }link; void fan(link * p,int first,int k); int main() { int first_address,N,K; int k=0; int tag=1; int sum=0; int i原创 2016-08-26 16:16:16 · 294 阅读 · 0 评论 -
1024 科学计数法
#include #include int main() { char c; int tag1,tag2; double num=0; int k=0; int i=-1; if((c=getchar())=='+') tag1=1; else tag1=0; num=getchar()-'0'; c=getchar(); while((c=getchar原创 2016-08-26 16:15:59 · 346 阅读 · 0 评论 -
1023 组个最小数
#include void QuickSort(int a[],int low,int high); int main() { int a[50]; int i=0,j=0,k=0; int n; for(i=0;i10;i++) { scanf("%d",&n); for(j=0;j<n;j++) { a[k]=i; k++原创 2016-08-26 16:15:40 · 263 阅读 · 0 评论 -
1022 D进制的A+B
#include #include void int_ever(int a,int n); int main() { int a,b,n; scanf("%d%d%d",&a,&b,&n); int_ever(a+b,n); return 0; } void int_ever(int a,int n) { int result=0,i=0; while(a!=0)原创 2016-08-26 16:15:21 · 229 阅读 · 0 评论 -
1042 字符统计
#include int main() { int a[200]={0}; int i,k,max=0; char b[1001]; gets(b); char *p=b; while(*p) { if(*p>='A' && *p { *p=*p-'A'+'a'; a[*p]++; } else if(*p>='a' && *p { a[*p]++; }原创 2016-09-05 23:18:56 · 281 阅读 · 0 评论 -
1043 输出PATest
#include int main() { char a[1000]; gets(a); int num_P=0,num_A=0,num_T=0,num_e=0,num_s=0,num_t=0; char * p=a; while(*p) { if(*p=='P') num_P++; else if(*p=='A') num_A++; else if(*p=='T原创 2016-09-05 21:35:55 · 316 阅读 · 0 评论 -
1055 集体照
#include #include #include #include #include using namespace std; int j=0; typedef struct skt { char name[30]; int high; }photo; bool comp(const photo node1,const photo node2){ if(node1.high!原创 2016-09-17 12:14:33 · 205 阅读 · 0 评论 -
1030 完美数列
#include void QuickSort(int a[],int low,int high); int main() { int n,p; int max=0; int i,j=0; scanf("%d%d",&n,&p); int a[n]; for(i=0;i<n;i++) scanf("%d",&a[i]); QuickSort(a,0,n-1);原创 2016-08-26 16:17:41 · 388 阅读 · 0 评论 -
1031 查验身份证
#include int main() { int n; char a[19]; int b[17]={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2}; char c[11]={'1', '0','X','9' ,'8', '7', '6', '5', '4' ,'3', '2'}; char *p; int i=0; int flag;原创 2016-08-26 16:18:14 · 230 阅读 · 0 评论 -
1032 挖掘机技术哪家强
#include int main() { int n; int k; int max1=0,max2=0; int num,iden; scanf("%d",&n); int a[50]={0}; while(n--) { scanf("%d%d",&num,&iden); if(num>max1) max1=num; a[n原创 2016-08-26 16:18:40 · 351 阅读 · 0 评论 -
1038 统计同成绩的同学
#include int main() { int fenshu[101]={0},chafen=0; int num=0,temp=0; scanf("%d",&num); for(int i=0;i<num;i++) { scanf("%d",&temp); if(0100) fenshu[temp]原创 2016-09-06 23:08:22 · 296 阅读 · 0 评论 -
1039 到底买不买
#include #include int main() { int i,j; int num1=0,num2=0; char a[1001]; char b[1001]; gets(a); gets(b); for(i=0;b[i];i++) for(j=0;a[j];j++) { if(a[j]==b[i]) { a[j]='+'; b[i]='+';原创 2016-09-06 22:41:35 · 245 阅读 · 0 评论 -
1040 有几个PAT
#include #include int main() { char str[100001]; gets(str); int numT = 0; int numAT = 0; int numPAT = 0; for(int i = strlen(str) - 1; i >= 0; --i) { //从字符串后面向前遍历 if(str[i]原创 2016-09-06 22:02:35 · 210 阅读 · 0 评论 -
1041 考试座位号
#include #include typedef struct skt { char a[15]; int first; int last; }student; int main() { int n,i,k,t,j; scanf("%d",&n); student * p; p=(student *)malloc(n*sizeof(n)); for(i原创 2016-09-06 13:35:37 · 297 阅读 · 0 评论 -
1044 火星数字
#include #include typedef struct trans { char *mars; }translist; int isMarsNumber(char *A); char *earthToMars(char *A,int lenth); int marsToEarth(char *A); translist a[13]={"tret","jan","feb","mar",转载 2016-08-25 20:52:41 · 232 阅读 · 0 评论 -
1043 输出PATesT
#include int main() { int P=0,A=0,T=0,e=0,s=0,t=0; char ch; while(scanf("%c",&ch)!=EOF) { if(ch=='P')P++; if(ch=='A')A++; if(ch=='T')T++; if(ch=='e')e++; if(ch=='s')s++; if(ch=='t')t++; } while(P>0转载 2016-08-26 16:22:59 · 303 阅读 · 0 评论 -
1042 字符统计
#include int main(){ char str[1001]; gets(str); int table[150], max=0; for(int i=0; i150; ++i) table[i]=0; for(int i=0; str[i]!='\0'; ++i){ if(str[i]>='A' && str[i转载 2016-08-26 16:22:35 · 280 阅读 · 0 评论 -
1041 考试座位号
#include int main(){ char str[1001]; gets(str); int table[150], max=0; for(int i=0; i150; ++i) table[i]=0; for(int i=0; str[i]!='\0'; ++i){ if(str[i]>='A' && str[i转载 2016-08-26 16:22:18 · 231 阅读 · 0 评论 -
1040 有几个PAT
#include #include int main() { char str[100001]; gets(str); int numT = 0; int numAT = 0; int numPAT = 0; for(int i = strlen(str) - 1; i >= 0; --i) { //从字符串后面向前遍历 if(str[i] == 'T')转载 2016-08-26 16:22:04 · 227 阅读 · 0 评论 -
1039 到底买不买
#include #include int main() { char s1[1001], s2[1001]; gets(s1); gets(s2); int len1 = strlen(s1), len2 = strlen(s2); //对每一个需要的珠子,寻找卖的链子,如果相同则“消掉”这一对。 for(int i = 0; i < len2; ++i) fo转载 2016-08-26 16:21:43 · 248 阅读 · 0 评论 -
1038 统计同成绩学生
#include int main() { int fenshu[101]={0},chafen=0; int num=0,temp=0; scanf("%d",&num); for(int i=0;i<num;i++) { scanf("%d",&temp); if(0100) fenshu[temp]原创 2016-08-26 16:21:27 · 233 阅读 · 0 评论 -
1037 载货格沃斯找零钱
#include int main() { int a,b,c,d,e,f,i,s,z,x,v; scanf("%d.%d.%d %d.%d.%d",&a,&b,&c,&d,&e,&f); s=(d*17*29+e*29+f)-(a*17*29+b*29+c); z=s/(17*29); x=s%(17*29)/29; v=s%29; if(s0) { printf("%d.%d原创 2016-08-25 20:45:22 · 195 阅读 · 0 评论 -
1036 跟奥巴马一起编程
#include int main() { int n; char c; int i,j; scanf("%d %c",&n,&c); int h=(int)((n/2.0)+0.5); for(i=1;i2*h-1);i++) { if(i==1) { for(j=0;j<n;j++) putchar(c); }原创 2016-08-26 16:20:36 · 231 阅读 · 0 评论 -
1035 插入与归并
#include void mergearray(int a[], int first, int mid, int last, int temp[]); void mergesort(int a[], int first, int last, int temp[],int b[],int n); void Insertsort(int a[],int n,int b[]); int main(原创 2016-08-26 16:20:14 · 241 阅读 · 0 评论 -
1034 有理数四则运算
#include int gcd(int m,int n); void print(int a1,int b1); void add(int a1,int b1,int a2,int b2); void reduce(int a1,int b1,int a2,int b2); void multi(int a1,int b1,int a2,int b2,int tag); void divis原创 2016-08-26 16:19:33 · 284 阅读 · 0 评论 -
1033 旧键盘打字
#include int main() { char a[100]; char b[100000]; gets(a); gets(b); char * pa=a; char * pb; while(*pa!='\0') { pb=b; if(*pa == '+') { for(pb;*pb!='\0';pb++) {原创 2016-08-26 16:19:03 · 246 阅读 · 0 评论 -
1005 继续(3n+1)猜想
#include int main() { int n; int i,j; int k,num=0; int max=0; int flag; scanf("%d",&n); int a[n]; for(i=0;i<n;i++) { scanf("%d",a+i); } for(i=0;i<n;i++) { if(*(a+i)==原创 2016-08-25 19:55:22 · 249 阅读 · 0 评论 -
1004 成绩排名
#include #include #include #define N 10 typedef struct student { char name[N]; char num[N]; int score; struct student * next; }stu; int main() { int max=0,min=1000; int n; stu * flag1;原创 2016-08-25 19:53:58 · 308 阅读 · 0 评论 -
1001 害死人不偿命的(3n+1猜想
#include int main() { int n=0,m=0; scanf("%d",&n); while(1) { if(n%2==0) { n/=2; m++; } else { n=(n*3+1)/2; m++; } if(n==1) {原创 2016-08-25 19:52:15 · 317 阅读 · 0 评论 -
1003 我要通过
#include #include int main() { char c[100]; int i,j,n; int count_P,count_A,count_T,pos_P,pos_T; scanf("%d\n",&n); for(i=0;i<n;i++) { gets(c); count_P=0; count_A=0; count_T=原创 2016-08-25 19:48:43 · 309 阅读 · 0 评论 -
1002 写出这个数
#include int main() { char a[40]; char b[10]; char *q=b; int tag; gets(a); char *p=a; int num=0; while(*p) { num+=(*p-48); p++; } while(num) { tag=num%10; num/=原创 2016-08-25 19:46:27 · 305 阅读 · 0 评论 -
1044 火星文
#include #include char * a[13]={"tret","jan","feb","mar","apr","may","jun","jly","aug","sep","oct","nov","dec" }; char * b[13]={0,"tam", "hel","maa","huh","tou","kes","hei","elo","syy","lok","m原创 2016-09-04 23:16:33 · 346 阅读 · 1 评论 -
1045 快速排序
#include #include int comp(const void * a,const void * b) { return *(int *)a- *(int *)b; } int main() { int n,i,j,k,g=0; int * a; int * b; int tag; scanf("%d",&n); a=(int *)m原创 2016-09-04 20:56:00 · 309 阅读 · 0 评论 -
1046 划拳
#include int main() { int n,i; scanf("%d",&n); int a1,a2,b1,b2; int ah=0,bh=0; for(i=0;i { scanf("%d%d%d%d",&a1,&a2,&b1,&b2); if(a2!=a1+b1 && b2==a1+b1) ah++; else if(a2==a1+b1 && b2!=原创 2016-09-04 11:33:04 · 277 阅读 · 0 评论 -
1047 编程团体赛
#include int main() { int n; int a[1000]={0}; int i; int temp; scanf("%d",&n); int num,va,sourse; for(i=0;i { scanf("%d-%d %d",&num,&va,&sourse); a[num]+=sourse; } for(i=1;i { if(a原创 2016-09-04 11:03:33 · 268 阅读 · 0 评论