您的位置:新葡亰496net > 奥门新萄京娱乐场 > pat模拟习题集,字符串处理习题集

pat模拟习题集,字符串处理习题集

发布时间:2019-06-21 12:40编辑:奥门新萄京娱乐场浏览(117)

    B1001.害死人不偿命的(3n 1)猜想(15)

    PAT/轻松模拟练习集(一),pat模拟习题集

    B1001.害死人不偿命的(3n 1)猜测 (15)

    Description:

    卡拉兹(Callatz)猜想:

    对别的贰个本来数n,即使它是偶数,那么把它砍掉四分之二;如若它是奇数,那么把(3n 1)砍掉八分之四。那样直白反复拿下去,最终一定在某一步获得n=1。卡拉兹在1949年的世界物医学家大会上公布了这么些推断,轶事当时耶路撒冷希伯来大学师生齐动员,拼命想评释这些貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证(3n 1),以致于有些人说那是多个阴谋,卡拉兹是在故意延缓美利坚合众国数学界教学与调查商量的进行……

    我们前些天的标题不是验证卡拉兹估计,而是对给定的任一不超过一千的正整数n,轻易地数一下,须求有些步(砍几下)技术获得n=1?

    Input:

    每一种测试输入包罗1个测试用例,即给出自然数n的值。

    Output:

    输出从n计算到1索要的步数。

    Sample Input:

    3

    Sample Output:

    5

     1 #include <cstdio>
     2 
     3 int main()
     4 {
     5     //freopen("E:\Temp\input.txt", "r", stdin);
     6 
     7     int n, step = 0;
     8     scanf("%d", &n);
     9 
    10     while(n != 1) {
    11         if(n%2 == 0) {
    12             n /= 2;
    13         } else {
    14             n = (3*n 1)/2;
    15         }
    16         step  ;
    17     }
    18 
    19     printf("%dn", step);
    20 
    21     return 0;
    22 }
    

     

    B1032. 发现机技艺哪家强 (20)

    Description:

    为了用实际证实开掘机工夫到底哪家强,PAT协会了一场开采机手艺大赛。现请你依照赛果总计出技能最强的不行高校。

    Input:

    输入在第1行提交不超过105的正整数N,即参加比赛人数。随后N行,每行给出一个野山参赛者的新闻和培育,包括其所表示的学院和学校的号码(从1发端接连编号)、及其比赛战表(百分制),中间以空格分隔。

    Output:

    在一行中付出总得分最高的学府的数码、及其总分,中间以空格分隔。标题保险答案唯一,未有同等对待。

    Sample Input:

    6
    3 65
    2 80
    1 100
    新葡亰496net,2 70
    3 40
    3 0

    Sample Output:

    2 150

     1 #include <cstdio>
     2 
     3 #define MaxSize 100010
     4 
     5 int school[MaxSize];
     6 
     7 int main()
     8 {
     9     //freopen("E:\Temp\input.txt", "r", stdin);
    10 
    11     int n, schID, score;
    12     scanf("%d", &n);
    13     for(int i=0; i<n;   i) {
    14         scanf("%d %d", &schID, &score);
    15         school[schID]  = score;
    16     }
    17 
    18     int ID, maxscore = -1;
    19     for(int i=1; i<=n;   i) {
    20         if(school[i] > maxscore) {
    21             ID = i;
    22             maxscore = school[i];
    23         }
    24     }
    25 
    26     printf("%d %dn", ID, maxscore);
    27 }
    

     

    B1011. A B和C (15)

    Description:

    给定区间[-231, 231]内的3个整数A、B和C,请判定A B是否超过C。

    Input:

    输入第1行提交正整数T(<=10),是测试用例的个数。随后给出T组测试用例,每组占一行,顺序给出A、B和C。整数间以空格分隔。

    Output:

    对每组测试用例,在一行中输出“Case #X: true”若是A B>C,不然输出“Case #X: false”,当中X是测试用例的编号(从1从头)。

    Sample Input:

    4
    1 2 3
    2 3 4
    2147483647 0 2147483646
    0 -2147483648 -2147483647

    Sample Output:

    Case #1: false
    Case #2: true
    Case #3: true
    Case #4: false

     1 #include <cstdio>
     2 
     3 int main()
     4 {
     5     //freopen("E:\Temp\input.txt", "r", stdin);
     6 
     7     int T;
     8     long long a, b, c;
     9     scanf("%d", &T);
    10     for(int i=1; i<=T;   i) {
    11         scanf("%lld %lld %lld", &a, &b, &c);
    12         if(a b > c) {
    13             printf("Case #%d: truen", i);
    14         } else {
    15             printf("Case #%d: falsen", i);
    16         }
    17     }
    18 
    19     return 0;
    20 }
    

     

    B1016. 部分A B (15)

    Description:

    正整数A的“DA(为1位子弹头)部分”定义为由A中全数DA构成的新整数PA。例如:给定A = 3862767,DA = 6,则A的“6部分”PA是66,因为A中有2个6。

    现给定A、DA、B、DB,请编写程序总计PA  PB

    Input:

    输入在一行中逐个给出A、DA、B、DB,中间以空格分隔,个中0 < A, B < 1010

    Output:

    在一行中输出PA  PB的值。

    Sample Input1:

    3862767 6 13530293 3

    Sample Output1:

    399

    Sample Input2:

    3862767 1 13530293 8

    Sample Output2:

    0

     1 #include <cstdio>
     2 
     3 int main()
     4 {
     5     //freopen("E:\Temp\input.txt", "r", stdin);
     6 
     7     int Da, Db;
     8     long long pA = 0, pB = 0, A, B;
     9     scanf("%lld %d %lld %d", &A, &Da, &B, &Db);
    10 
    11     while(A != 0) {
    12         if(A == Da) {
    13             pA = pA*10 Da;
    14         }
    15         A /= 10;
    16     }
    17     while(B != 0) {
    18         if(B == Db) {
    19             pB = pB*10 Db;
    20         }
    21         B /= 10;
    22     }
    23 
    24     printf("%lldn", pA pB);
    25 
    26     return 0;
    27 }
    

     

    B1026. 程序运转时间 (15)

    Description:

    要收获二个C语言程序的周转时刻,常用的诀要是调用头文件time.h,个中提供了clock()函数,能够捕捉从程序开首运维到clock()被调用时所消耗的大运。那么些日子单位是clock tick,即“石英钟照看”。同期还会有三个常数CLK_TCK,给出了机械时钟每秒所走的时钟照看数。于是为了得到三个函数f的周转时刻,我们只要在调用f从前先调用clock(),得到多个时钟照应数C1;在f推行到位后再调用clock(),获得另一个石英钟照望数C2;一次拿走的挂钟照拂数之差(C2-C1)正是f运转所消耗的石英钟照管数,再除以常数CLK_TCK,就赢得了以秒为单位的运维时刻。

    此地无妨简要即便常数CLK_TCK为100。现给定被测函数前后五遍拿走的石英钟照顾数,请你提交被测函数运维的时间。

    Input:

    输入在一行中各种给出2个整数C1和C1。注意三遍获得的机械钟照料数显明不一样样,即C1 < C2,并且取值在[0, 107]。

    Output:

    在一行中输出被测函数运转的时间。运营时刻必须遵从“hh:mm:ss”(即2位的“时:分:秒”)格式输出;不足1秒的日子四舍五入到秒。

    Sample Input:

    123 4577973

    Sample Output:

    12:42:59

     1 #include <cstdio>
     2 
     3 int main()
     4 {
     5     //freopen("E:\Temp\input.txt", "r", stdin);
     6 
     7     int C1, C2;
     8     scanf("%d %d", &C1, &C2);
     9 
    10     int ans = C2 - C1;
    11     if(ans0 < 50) {
    12         ans /= 100;
    13     } else {
    14         ans = ans/100 1;
    15     }
    16 
    17     printf("d:d:dn", ans/3600, ans600/60, ans`);
    18 
    19     return 0;
    20 }
    

     

    B1008. 数组成分循环右移难题 (20)

    Description:

    一个数组A中存有N(N>0)个整数,在不允许使用其它数组的前提下,将各样整数循环向右移M(M>=0)个岗位,就要A中的数据由(A0A1……AN-1)变换为(AN-M …… AN-1 A0 A1……AN-M-1)(最后M个数循环移至最前头的M个地方)。如若须求思虑程序移动数据的次数尽量少,要哪些计划活动的措施?

    Input:

    各个输入包罗贰个测试用例,第1行输入N ( 1<=N<=100)、M(M>=0);第2行输入N个整数,之间用空格分隔。

    Output:

    在一行中输出循环右移M位今后的板寸体系,之间用空格分隔,类别结尾无法有剩余空格。

    Sample Input:

    6 2
    1 2 3 4 5 6

    Sample Output:

    5 6 1 2 3 4

     1 #include <cstdio>
     2 
     3 #define MaxSize 110
     4 
     5 int List[MaxSize];
     6 
     7 int main()
     8 {
     9     //freopen("E:\Temp\input.txt", "r", stdin);
    10 
    11     int N, M, counter = 1;
    12     scanf("%d %d", &N, &M);
    13     for(int i=0; i<N;   i) {
    14         scanf("%d", &List[i]);
    15     }
    16 
    17     M %= N;
    18     for(int i=N-M; i<N;   i) {
    19         if(counter != N) {
    20             printf("%d ", List[i]);
    21         } else {
    22             printf("%dn", List[i]);
    23         }
    24         counter  ;
    25     }
    26     for(int i=0; i<N-M;   i) {
    27         if(counter != N) {
    28             printf("%d ", List[i]);
    29         } else {
    30             printf("%dn", List[i]);
    31         }
    32         counter  ;
    33     }
    34 
    35     return 0;
    36 }
    

     

    B1012. 数字分类 (20)

    Description:

    定一雨后苦笋正整数,请按须要对数字实行分类,并出口以下5个数字:

    • A1 = 能被5整除的数字中享有偶数的和;
    • A2 = 将被5除后余1的数字按给出顺序实行交错求和,即计算n1-n2 n3-n4...;
    • A3 = 被5除后余2的数字的个数;
    • AUDI = 被5除后余3的数字的平平均数量,正确到小数点后1位;
    • A5 = 被5除后余4的数字中最大数字。

    Input:

    各类输入包括1个测试用例。各个测试用例先给出三个不超越一千的正整数N,随后给出N个不超越一千的待分类的正整数。数字间以空格分隔。

    Output:

    对给定的N个正整数,按标题供给总括A1~A5并在一行中逐条输出。数字间以空格分隔,但行末不得有剩余空格。

    若里面某一类数字不设有,则在对应地方输出“N”。

    Sample Input1:

    13 1 2 3 4 5 6 7 8 9 10 20 16 18

    Sample Output1:

    30 11 2 9.7 9

    Sample Input2:

    8 1 2 4 5 6 7 9 16

    Sample Output2:

    N 11 2 N 9

     1 #include <cstdio>
     2 
     3 #define MaxSize 5
     4 
     5 int List[MaxSize], ans[MaxSize];
     6 
     7 int main()
     8 {
     9     //freopen("E:\Temp\input.txt", "r", stdin);
    10 
    11     int N, temp;
    12     scanf("%d", &N);
    13     for(int i=0; i<N;   i) {
    14         scanf("%d", &temp);
    15         if(temp%5 == 0) {
    16             if(temp%2 == 0) {
    17                 ans[0]  = temp;
    18                 List[0]  ;
    19             }
    20         } else if(temp%5 == 1) {
    21             if(List[1]%2 == 0) {
    22                 ans[1]  = temp;
    23             } else {
    24                 ans[1] -= temp;
    25             }
    26             List[1]  ;
    27         } else if(temp%5 == 2) {
    28             List[2]  ;
    29         } else if(temp%5 == 3) {
    30             ans[3]  = temp;
    31             List[3]  ;
    32         } else {
    33             if(temp > ans[4]) {
    34                 ans[4] = temp;
    35             }
    36             List[4]  ;
    37         }
    38     }
    39 
    40     if(List[0] == 0) {
    41         printf("N ");
    42     } else {
    43         printf("%d ", ans[0]);
    44     }
    45     if(List[1] == 0) {
    46         printf("N ");
    47     } else {
    48         printf("%d ", ans[1]);
    49     }
    50     if(List[2] == 0) {
    51         printf("N ");
    52     } else {
    53         printf("%d ", List[2]);
    54     }
    55     if(List[3] == 0) {
    56         printf("N ");
    57     } else {
    58         printf("%.1f ", (double)ans[3]/List[3]);
    59     }
    60     if(List[4] == 0) {
    61         printf("Nn");
    62     } else {
    63         printf("%dn", ans[4]);
    64     }
    65 
    66     return 0;
    67 }
    

     

    B1001.害死人不偿命的(3n 1)猜测 (15) Description: 卡拉兹(Callatz)测度: 对任何三个本来数n,假设它是...

    B1006. 换个格式输出整数

    B1006. 换个格式输出整数 (15)

    Description:

    Description:

    Description:

    卡拉兹(Callatz)猜想:

    让大家用字母B来代表“百”、字母S表示“十“,用“12...n”来表示个位数字n,换个格式来输出任三个不超过3位的正整数。比如234应该被输出为BBSSS1234,因为它有2个“百”、3个“十”、以及个位的4。

    让我们用字母B来表示“百”、字母S表示“十“,用“12...n”来代表个位数字n(<10),换个格式来输出任叁个不超越3位的正整数。比方234应有被输出为BBSSS1234,因为它有2个“百”、3个“十”、以及个位的4。

    对其它叁个当然数n,若是它是偶数,那么把它砍掉二分之一;借使它是奇数,那么把(3n 1)砍掉二分之一。那样直接反复拿下去,最后一定在某一步得到n=1。卡拉兹在1946年的世界化学家大会上发表了那几个估计,有趣的事当时耶鲁州立高校师生齐动员,拼命想评释那么些貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证(3n 1),以致于有些人会讲那是三个阴谋,卡拉兹是在有意延缓U.S.A.数学界教学与调研的开始展览……

    Input:

    Input:

    咱俩后天的标题不是认证卡拉兹猜测,而是对给定的任一不超过一千的正整数n,轻巧地数一下,供给多少步(砍几下)技术博取n=1?

    每种测试输入包括1个测试用例,给出正整数n。

    各类测试输入包蕴1个测试用例,给出正整数n(<一千)。

    Input:

    Output:

    Output:

    各个测试输入包罗1个测试用例,即给出自然数n的值。

    各样测试用例的输出占一行,用规定的格式输出n。

    每一个测试用例的出口占一行,用规定的格式输出n。

    Output:

    Sample Input1:

    Sample Input1:

    输出从n总括到1亟待的步数。

    234

    234

    Sample Input:

    Sample Output1:

    Sample Output1:

    3

    BBSSS1234

    BBSSS1234

    Sample Output:

    Sample Input2:

    Sample Input2:

    5

    23

    23

     1 #include <cstdio>
     2 
     3 int main()
     4 {
     5     //freopen("E:\Temp\input.txt", "r", stdin);
     6 
     7     int n, step = 0;
     8     scanf("%d", &n);
     9 
    10     while(n != 1) {
    11         if(n%2 == 0) {
    12             n /= 2;
    13         } else {
    14             n = (3*n 1)/2;
    15         }
    16         step  ;
    17     }
    18 
    19     printf("%dn", step);
    20 
    21     return 0;
    22 }
    

    Sample Output2:

    Sample Output2:

     

    SS123

    SS123

    B1032. 推土机手艺哪家强 (20)

     1 #include <cstdio> 2  3 int main() 4 { 5     int n; 6     scanf("%d", &n); 7  8     int num = 0, ans[5]; 9     while(n != 0) {10         ans[num  ] = n;11         n /= 10;12     }13 14     for(int i=num-1; i>=0; --i) {15         if(i == 2) {16             for(int j=0; j<ans[i];   j)17                 printf("B");18         } else if(i == 1) {19             for(int j=0; j<ans[i];   j)20                 printf("S");21         } else {22             for(int j=1; j<=ans[i];   j)23                 printf("%d", j);24         }25     }26 27     return 0;28 }
    
     1 #include <cstdio>
     2 
     3 int main()
     4 {
     5     int n;
     6     scanf("%d", &n);
     7 
     8     int num = 0, ans[5];
     9     while(n != 0) {
    10         ans[num  ] = n;
    11         n /= 10;
    12     }
    13 
    14     for(int i=num-1; i>=0; --i) {
    15         if(i == 2) {
    16             for(int j=0; j<ans[i];   j)
    17                 printf("B");
    18         } else if(i == 1) {
    19             for(int j=0; j<ans[i];   j)
    20                 printf("S");
    21         } else {
    22             for(int j=1; j<=ans[i];   j)
    23                 printf("%d", j);
    24         }
    25     }
    26 
    27     return 0;
    28 }
    

    Description:

    B1021. 个位数总括

     

    为了用真情表明发现机能力到底哪家强,PAT协会了一场发掘机手艺大赛。现请你根据比赛结果计算出手艺最强的要命高校。

    Description:

    B1021. 个位数总括 (15)

    Input:

    给定三个k位整数N = dk-1*10k-1 ... d1*101 d0 (0<=di<=9, i=0,...,k-1, dk-1>0),请编写程序计算每一个差异的个位数字出现的次数。举个例子:给定N = 100311,则有2个0,3个1,和1个3。

    Description:

    输入在第1行提交不超越105的正整数N,即参加比赛人数。随后N行,每行给出一个土精赛者的音讯和实际业绩,包罗其所表示的母校的编号(从1初始接二连三编号)、及其比赛战表(百分制),中间以空格分隔。

    Input:

    给定一个k位整数N = dk-1*10k-1 ... d1*101

    Output:

    每一个输入包蕴1个测试用例,即叁个不超过一千位的正整数N。

    • d0 (0<=di<=9, i=0,...,k-1, dk-1>0),请编写程序总计各个差别的个位数字出现的次数。举个例子:给定N = 100311,则有2个0,3个1,和1个3。

    在一行中付出总得分最高的学院和学校的号码、及其总分,中间以空格分隔。题目有限扶助答案唯一,未有天公地道。

    Output:

    Input:

    Sample Input:

    对N中各个不一样的个位数字,以D:M的格式在一行中输出该位数字D及其在N中出现的次数M。需要按D的升序输出。

    各类输入包蕴1个测试用例,即一个不超越一千位的正整数N。

    6
    3 65
    2 80
    1 100
    2 70
    3 40
    3 0

    Sample Input:

    Output:

    Sample Output:

    100311

    对N中每一项区别的个位数字,以D:M的格式在一行中输出该位数字D及其在N中出现的次数M。供给按D的升序输出。

    2 150

    Sample Output:

    Sample Input:

     1 #include <cstdio>
     2 
     3 #define MaxSize 100010
     4 
     5 int school[MaxSize];
     6 
     7 int main()
     8 {
     9     //freopen("E:\Temp\input.txt", "r", stdin);
    10 
    11     int n, schID, score;
    12     scanf("%d", &n);
    13     for(int i=0; i<n;   i) {
    14         scanf("%d %d", &schID, &score);
    15         school[schID]  = score;
    16     }
    17 
    18     int ID, maxscore = -1;
    19     for(int i=1; i<=n;   i) {
    20         if(school[i] > maxscore) {
    21             ID = i;
    22             maxscore = school[i];
    23         }
    24     }
    25 
    26     printf("%d %dn", ID, maxscore);
    27 }
    

    pat模拟习题集,字符串处理习题集。0:2
    1:3
    3:1

    100311

     

     1 #include <cstdio> 2 #include <cstring> 3  4 #define MaxSize 1010 5 char List[MaxSize]; 6  7 int main() 8 { 9     //freopen("E:\Temp\input.txt", "r", stdin);10 11     gets;12 13     int len = strlen, ans[10] = {0};14     for(int i=0; i<len;   i)15           ans[List[i]-'0'];16 17     for(int i=0; i<10;   i) {18         if(ans[i] != 0)19             printf("%d:%dn", i, ans[i]);20     }21 22     return 0;23 }
    

    Sample Output:

    B1011. A B和C (15)

    B1031. 核算居民身份证

    0:2
    1:3
    3:1

    Description:

    Description:

     1 #include <cstdio>
     2 #include <cstring>
     3 
     4 #define MaxSize 1010
     5 char List[MaxSize];
     6 
     7 int main()
     8 {
     9     //freopen("E:\Temp\input.txt", "r", stdin);
    10 
    11     gets(List);
    12 
    13     int len = strlen(List), ans[10] = {0};
    14     for(int i=0; i<len;   i)
    15           ans[List[i]-'0'];
    16 
    17     for(int i=0; i<10;   i) {
    18         if(ans[i] != 0)
    19             printf("%d:%dn", i, ans[i]);
    20     }
    21 
    22     return 0;
    23 }
    

    给定区间[-231, 231]内的3个整数A、B和C,请剖断A B是不是高于C。

    一个合法的居民身份证编号由18人地区、日期编号和各类编号加1位校验码组成。校验码的测算规则如下:

     

    Input:

    率先对前二11人数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将总计的和对11取模获得值Z;最终根据以下关系对应Z值与校验码M的值:

    B1031. 核准居民身份证 (15)

    输入第1行提交正整数T(<=10),是测试用例的个数。随后给出T组测试用例,每组占一行,顺序给出A、B和C。整数间以空格分隔。

    Z:0 1 2 3 4 5 6 7 8 9 10
    M:1 0 X 9 8 7 6 5 4 3 2

    Description:

    Output:

    于今加以一些身份ID号码,请您验证校验码的灵光,并出口有题指标号码。

    贰个官方的居民身份证编号由18人地点、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下:

    对每组测试用例,在一行中输出“Case #X: true”如若A B>C,不然输出“Case #X: false”,当中X是测试用例的数码(从1方始)。

    Input:

    先是对前贰十一位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将总计的和对11取模获得值Z;最终根据以下关系对应Z值与校验码M的值:

    Sample Input:

    输入第一行提交正整数N(<= 100)是输入的身份证编号的个数。随后N行,每行给出1个二十一位身份ID号码。

    Z:0 1 2 3 4 5 6 7 8 9 10
    M:1 0 X 9 8 7 6 5 4 3 2

    4
    1 2 3
    2 3 4
    2147483647 0 2147483646
    0 -2147483648 -2147483647

    Output:

    当今加以一些身份ID编号,请你验证校验码的有效,并出口不正常的编号。

    Sample Output:

    坚守输入的相继每行输出1个不经常常的居民身份证号码。这里并不检查前十多少人是不是创设,只检查前二11个人是不是全为数字且最后1位校验码总括规范。假使具备号码都平常,则输出“All passed”。

    Input:

    Case #1: false
    Case #2: true
    Case #3: true
    Case #4: false

    Sample Input1:

    输入第一行提交正整数N(<= 100)是输入的居民身份证号码的个数。随后N行,每行给出1个17人居民身份证编号。

     1 #include <cstdio>
     2 
     3 int main()
     4 {
     5     //freopen("E:\Temp\input.txt", "r", stdin);
     6 
     7     int T;
     8     long long a, b, c;
     9     scanf("%d", &T);
    10     for(int i=1; i<=T;   i) {
    11         scanf("%lld %lld %lld", &a, &b, &c);
    12         if(a b > c) {
    13             printf("Case #%d: truen", i);
    14         } else {
    15             printf("Case #%d: falsen", i);
    16         }
    17     }
    18 
    19     return 0;
    20 }
    

    4
    320124198808240056
    12010X198901011234
    pat模拟习题集,字符串处理习题集。110108196711301866
    37070419881216001X

    Output:

     

    Sample Output1:

    根据输入的次第每行输出1个有题指标身份证号码。这里并不检查前二十人是不是合理,只检查前十九位是还是不是全为数字且最终1位校验码计算标准。要是全部号码都例行,则输出“All passed”。

    B1016. 部分A B (15)

    12010X198901011234
    110108196711301866
    37070419881216001X

    Sample Input1:

    Description:

    Sample Input2:

    4
    320124198808240056
    12010X198901011234
    110108196711301866
    37070419881216001X

    正整数A的“DA(为1位整数)部分”定义为由A中全体DA组合的新整数PA。例如:给定A = 3862767,DA = 6,则A的“6部分”PA是66,因为A中有2个6。

    2
    320124198808240056
    110108196711301862

    Sample Output1:

    现给定A、DA、B、DB,请编写程序总计PA  PB

    Sample Output2:

    12010X198901011234
    110108196711301866
    37070419881216001X

    Input:

    All passed

    Sample Input2:

    输入在一行中各类给出A、DA、B、DB,中间以空格分隔,在那之中0 < A, B < 1010

     1 #include <cstdio> 2 #include <cstring> 3  4 int w[] = {7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2}; 5 char change[] = {'1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'}; 6  7 int main() 8 { 9     int n;10     char str[20];11     bool flag = true;12     scanf("%d", &n);13     for(int i=0; i<n;   i) {14         scanf("%s", str);15         int j, last = 0;16         for(j=0; j<17;   j) {17             if(!(str[j]>='0' && str[j]<='9'))   break;18             last  = (str[j]-'0')*w[j];19         }20         if(j < 17) {21             flag = false;22             printf("%sn", str);23         } else {24             if(change[last] != str[17]) {25                 flag = false;26                 printf("%sn", str);27             }28         }29     }30     if(flag == true)    printf("All passedn");31 32     return 0;33 }
    

    2
    320124198808240056
    110108196711301862

    Output:

    B1002. 写出这么些数

    Sample Output2:

    在一行中输出PA  PB的值。

    Description:

    All passed

    Sample Input1:

    读入多个道理当然是那样的数n,总结其各位数字之和,用汉语拼音写出和的每一人数字。

     1 #include <cstdio>
     2 #include <cstring>
     3 
     4 int w[] = {7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2};
     5 char change[] = {'1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'};
     6 
     7 int main()
     8 {
     9     int n;
    10     char str[20];
    11     bool flag = true;
    12     scanf("%d", &n);
    13     for(int i=0; i<n;   i) {
    14         scanf("%s", str);
    15         int j, last = 0;
    16         for(j=0; j<17;   j) {
    17             if(!(str[j]>='0' && str[j]<='9'))   break;
    18             last  = (str[j]-'0')*w[j];
    19         }
    20         if(j < 17) {
    21             flag = false;
    22             printf("%sn", str);
    23         } else {
    24             if(change[last] != str[17]) {
    25                 flag = false;
    26                 printf("%sn", str);
    27             }
    28         }
    29     }
    30     if(flag == true)    printf("All passedn");
    31 
    32     return 0;
    33 }
    

    3862767 6 13530293 3

    Input:

     

    Sample Output1:

    每个测试输入包涵1个测试用例,即给出自然数n的值。这里保险n小于10100。

    B1002. 写出那个数 (20)

    399

    Output:

    Description:

    Sample Input2:

    在一行内输出n的诸位数字之和的每一人,拼音数字间有1 空格,但一行中最终一个拼音数字后未有空格。

    读入叁个道理当然是那样的数n,总计其各位数字之和,用普通话拼音写出和的每一个人数字。

    3862767 1 13530293 8

    Sample Input:

    Input:

    Sample Output2:

    1234567890987654321123456789

    种种测试输入包含1个测试用例,即给出自然数n的值。这里保险n小于10100

    0

    Sample Output:

    Output:

     1 #include <cstdio>
     2 
     3 int main()
     4 {
     5     //freopen("E:\Temp\input.txt", "r", stdin);
     6 
     7     int Da, Db;
     8     long long pA = 0, pB = 0, A, B;
     9     scanf("%lld %d %lld %d", &A, &Da, &B, &Db);
    10 
    11     while(A != 0) {
    12         if(A == Da) {
    13             pA = pA*10 Da;
    14         }
    15         A /= 10;
    16     }
    17     while(B != 0) {
    18         if(B == Db) {
    19             pB = pB*10 Db;
    20         }
    21         B /= 10;
    22     }
    23 
    24     printf("%lldn", pA pB);
    25 
    26     return 0;
    27 }
    

    yi san wu

    在一行内输出n的诸位数字之和的每一个人,拼音数字间有1 空格,但一行中最终贰个拼音数字后尚未空格。

     

     1 #include <cstdio> 2 #include <cstring> 3  4 int main() 5 { 6     char str[110]; 7     gets; 8  9     int ans[10], num = 0, len = strlen;10     int sum = 0;11     for(int i=0; i<len;   i)12         sum  = str[i]-'0';13     while(sum != 0) {14         ans[num  ] = sum;15         sum /= 10;16     }17     char change[10][5] = {"ling", "yi", "er", "san", "si", "wu", "liu", "qi", "ba", "jiu"};18 19     for(int i=num-1; i>=0; i--) {20         printf("%s", change[ans[i]]);21         if(i != 0)  printf(" ");22         else printf("n");23     }24 25     return 0;26 }
    

    Sample Input:

    B1026. 程序运转时间 (15)

    B1009. 说反话

    1234567890987654321123456789

    Description:

    Description:

    Sample Output:

    要获取一个C语言程序的运维时刻,常用的点子是调用头文件time.h,在那之中提供了clock()函数,能够捕捉从程序起先运营到clock()被调用时所费用的年华。那些时间单位是clock tick,即“时钟照望”。同期还应该有多少个常数CLK_TCK,给出了机械机械钟每秒所走的石英钟照看数。于是为了获取八个函数f的运转时刻,我们只要在调用f以前先调用clock(),获得二个挂钟照管数C1;在f试行到位后再调用clock(),获得另一个石英钟照管数C2;两回获得的石英手表关照数之差(C2-C1)正是f运转所花费的石英钟照拂数,再除以常数CLK_TCK,就拿走了以秒为单位的运作时刻。

    给定一句菲律宾语,须求您编写程序,将句中有着单词的顺序颠倒输出。

    yi san wu

    这里不要紧简要假使常数CLK_TCK为100。现给定被测函数前后四次获得的时钟照拂数,请您付出被测函数运维的时日。

    Input:

     1 #include <cstdio>
     2 #include <cstring>
     3 
     4 int main()
     5 {
     6     char str[110];
     7     gets(str);
     8 
     9     int ans[10], num = 0, len = strlen(str);
    10     int sum = 0;
    11     for(int i=0; i<len;   i)
    12         sum  = str[i]-'0';
    13     while(sum != 0) {
    14         ans[num  ] = sum;
    15         sum /= 10;
    16     }
    17     char change[10][5] = {"ling", "yi", "er", "san", "si", "wu", "liu", "qi", "ba", "jiu"};
    18 
    19     for(int i=num-1; i>=0; i--) {
    20         printf("%s", change[ans[i]]);
    21         if(i != 0)  printf(" ");
    22         else printf("n");
    23     }
    24 
    25     return 0;
    26 }
    

    Input:

    测试输入包涵一个测试用例,在一行内提交总市长度不超过80的字符串。字符串由若干单词和几何空格组成,当中单词是由英文字母组成的字符串,单词之间用1个空格分开,输入有限辅助句子末尾未有剩余的空格。

     

    输入在一行中各样给出2个整数C1和C1。注意一遍获得的石英钟照应数料定分歧,即C1 < C2,并且取值在[0, 107]。

    Output:

    B1009. 说反话 (20)

    Output:

    各个测试用例的出口占一行,输出倒序后的句子。

    Description:

    在一行中输出被测函数运维的光阴。运维时刻必须依据“hh:mm:ss”(即2位的“时:分:秒”)格式输出;不足1秒的小运四舍五入到秒。

    Sample Input:

    给定一句马耳他语,供给您编写程序,将句中具有单词的依次颠倒输出。

    Sample Input:

    Hello World Here I Come

    Input:

    123 4577973

    Sample Output:

    测试输入包括一个测试用例,在一行内提交总司长度不超过80的字符串。字符串由若干单词和多少空格组成,个中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入有限扶助句子末尾未有剩余的空格。

    Sample Output:

    Come I Here World Hello

    Output:

    12:42:59

     1 #include <cstdio> 2  3 #define MaxSize 100 4 char List[MaxSize][MaxSize]; 5  6 int main() 7 { 8     //freopen("E:\Temp\input.txt", "r", stdin); 9 10     int num = 0;11     while(scanf("%s", List[num]) != EOF)12         num  ;13 14     for(int i=num-1; i>=0; --i) {15         printf("%s", List[i]);16         if(i != 0)  printf(" ");17         else printf("n");18     }19 20     return 0;21 }
    
     1 #include <cstdio> 2 #include <cstring> 3  4 #define MaxSize 100 5 char List[MaxSize], ans[MaxSize][MaxSize]; 6  7 int main() 8 { 9     //freopen("E:\Temp\input.txt", "r", stdin);10 11     gets;12 13     int num = 0, counter = 0, len = strlen;14     for(int i=0; i<len;   i) {15         if(List[i] != ' ')16             ans[num][counter  ] = List[i];17         else {18             counter = 0;19               num;20         }21     }22 23     for(int i=num; i>=0; --i) {24         printf("%s", ans[i]);25         if(i != 0)  printf(" ");26         else printf("n");27     }28 29     return 0;30 }
    

    各种测试用例的出口占一行,输出倒序后的句子。

     1 #include <cstdio>
     2 
     3 int main()
     4 {
     5     //freopen("E:\Temp\input.txt", "r", stdin);
     6 
     7     int C1, C2;
     8     scanf("%d %d", &C1, &C2);
     9 
    10     int ans = C2 - C1;
    11     if(ans0 < 50) {
    12         ans /= 100;
    13     } else {
    14         ans = ans/100 1;
    15     }
    16 
    17     printf("d:d:dn", ans/3600, ans600/60, ans`);
    18 
    19     return 0;
    20 }
    

    B1014. 霍姆斯的约会

    Sample Input:

     

    Description:

    Hello World Here I Come

    B1008. 数组成分循环右移难题 (20)

    大侦探霍姆斯接到一张竟然的字条:“我们约会吗! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm”。大暗访相当慢就精晓了,字条上竟然的乱码实际上正是花前月下的小运“周六14:04”,因为后边两字符串中第1对同样的大写英文字母是第4个假名'D',代表星期日;第2对同一的字符是'E',那是第5个英文字母,代表一天里的第16个钟头(于是一天的0点到23点由数字0到9、以及大写字母A到N表示);前边两字符串第1对同一的英文字母's'现身在第4个职位上,代表第4秒钟。现给定两对字符串,请补助霍姆斯解码获得约会的时光。

    Sample Output:

    Description:

    Input:

    Come I Here World Hello

    一个数组A中存有N(N>0)个整数,在不允许利用其它数组的前提下,将各种整数循环向右移M(M>=0)个岗位,就要A中的数据由(A0A1……AN-1)变换为(AN-M …… AN-1 A0 A1……AN-M-1)(最终M个数循环移至最前方的M个位置)。纵然急需思量程序移动多少的次数尽量少,要怎么着统筹活动的不二法门?

    输入在4行中分头交付4个非空、不包括空格、且长度不超过60的字符串。

     1 #include <cstdio>
     2 
     3 #define MaxSize 100
     4 char List[MaxSize][MaxSize];
     5 
     6 int main()
     7 {
     8     //freopen("E:\Temp\input.txt", "r", stdin);
     9 
    10     int num = 0;
    11     while(scanf("%s", List[num]) != EOF)
    12         num  ;
    13 
    14     for(int i=num-1; i>=0; --i) {
    15         printf("%s", List[i]);
    16         if(i != 0)  printf(" ");
    17         else printf("n");
    18     }
    19 
    20     return 0;
    21 }
    
     1 #include <cstdio>
     2 #include <cstring>
     3 
     4 #define MaxSize 100
     5 char List[MaxSize], ans[MaxSize][MaxSize];
     6 
     7 int main()
     8 {
     9     //freopen("E:\Temp\input.txt", "r", stdin);
    10 
    11     gets(List);
    12 
    13     int num = 0, counter = 0, len = strlen(List);
    14     for(int i=0; i<len;   i) {
    15         if(List[i] != ' ')
    16             ans[num][counter  ] = List[i];
    17         else {
    18             counter = 0;
    19               num;
    20         }
    21     }
    22 
    23     for(int i=num; i>=0; --i) {
    24         printf("%s", ans[i]);
    25         if(i != 0)  printf(" ");
    26         else printf("n");
    27     }
    28 
    29     return 0;
    30 }
    

    Input:

    Output:

     

    各种输入包涵二个测试用例,第1行输入N ( 1<=N<=100)、M(M>=0);第2行输入N个整数,之间用空格分隔。

    在一行中输出约会的时日,格式为“DAY HH:MM”,个中“DAY”是某星期的3字符缩写,即MON表示周一,TUE表示礼拜天,WED代表礼拜三,THU代表周五,FSportageI表示星期日,SAT表示星期二,SUN表示周六。题目输入保证种种测试存在唯一解。

    B1014. Holmes的约会 (20)

    Output:

    Sample Input:

    Description:

    在一行中输出循环右移M位未来的大背头系列,之间用空格分隔,体系结尾不能够有多余空格。

    3485djDkxh4hhGE

    大侦探霍姆斯接到一张竟然的字条:“我们约会呢! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm”。大暗访十分的快就领悟了,字条上意外的乱码实际上就是花前月下的时光“周一14:04”,因为前边两字符串中第1对同样的大写英文字母(大小写有区分)是第4个假名'D',代表周日;第2对一样的字符是'E',那是第5个英文字母,代表一天里的第十五个钟头(于是一天的0点到23点由数字0到9、以及大写字母A到N表示);前边两字符串第1对一样的英文字母's'出现在第4个职位(从0开端计数)上,代表第4分钟。现给定两对字符串,请帮衬Holmes解码获得约会的日子。

    Sample Input:

    2984akDfkkkkggEdsb

    Input:

    6 2
    1 2 3 4 5 6

    s&hgsfdk

    输入在4行中分头交付4个非空、不带有空格、且长度不超过60的字符串。

    Sample Output:

    d&Hyscvnm

    Output:

    5 6 1 2 3 4

    Sample Output:

    在一行中输出约会的光阴,格式为“DAY HH:MM”,当中“DAY”是某星期的3字符缩写,即MON表示周日,TUE表示星期天,WED代表礼拜一,THU代表周三,F翼虎I表示星期日,SAT表示星期三,SUN表示星期四。标题输入保障每种测试存在唯一解。

     1 #include <cstdio>
     2 
     3 #define MaxSize 110
     4 
     5 int List[MaxSize];
     6 
     7 int main()
     8 {
     9     //freopen("E:\Temp\input.txt", "r", stdin);
    10 
    11     int N, M, counter = 1;
    12     scanf("%d %d", &N, &M);
    13     for(int i=0; i<N;   i) {
    14         scanf("%d", &List[i]);
    15     }
    16 
    17     M %= N;
    18     for(int i=N-M; i<N;   i) {
    19         if(counter != N) {
    20             printf("%d ", List[i]);
    21         } else {
    22             printf("%dn", List[i]);
    23         }
    24         counter  ;
    25     }
    26     for(int i=0; i<N-M;   i) {
    27         if(counter != N) {
    28             printf("%d ", List[i]);
    29         } else {
    30             printf("%dn", List[i]);
    31         }
    32         counter  ;
    33     }
    34 
    35     return 0;
    36 }
    

    THU 14:04

    Sample Input:

     

     1 #include <cstdio> 2 #include <cstring> 3  4 int main() 5 { 6     char week[7][5] = {"MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"}; 7     char str1[70], str2[70], str3[70], str4[70]; 8     gets, gets, gets, gets; 9 10     int len1 = strlen, len2 = strlen, len3 = strlen, len4 = strlen;11     int i;12     for(i=0; i<len1&&i<len2;   i) {13         if(str1[i]==str2[i] && str1[i]>='A' && str1[i]<='G') {14             printf("%s ", week[str1[i]-'A']);15             break;16         }17     }18     for(  i; i<len1&&i<len2;   i) {19         if(str1[i] == str2[i]) {20             if(str1[i]>='0' && str1[i]<='9') {21                 printf("d:", str1[i]-'0');22                 break;23             } else if(str1[i]>='A' && str1[i]<='N') {24                 printf("d:", str1[i]-'A' 10);25                 break;26             }27         }28     }29     for(i=0; i<len3&&i<len4;   i) {30         if(str3[i] == str4[i]) {31             if((str3[i]>='A' && str3[i]<='Z') || (str3[i]>='a'&&str3[i]<='z')) {32                 printf("d", i);33                 break;34             }35         }36     }37 38     return 0;39 }
    

    3485djDkxh4hhGE

    B1012. 数字分类 (20)

    A1061. Dating

    2984akDfkkkkggEdsb

    Description:

    Description:

    s&hgsfdk

    定一比比皆是正整数,请按供给对数字举办分拣,并出口以下5个数字:

    Sherlock Holmes received a note with some strange strings: "Let's date! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm". It took him only a minute to figure out that those strange strings are actually referring to the coded time "Thursday 14:04" -- since the first common capital English letter (case sensitive) shared by the first two strings is the 4th capital letter 'D', representing the 4th day in a week; the second common character is the 5th capital letter 'E', representing the 14th hour (hence the hours from 0 to 23 in a day are represented by the numbers from 0 to 9 and the capital letters from A to N, respectively); and the English letter shared by the last two strings is 's' at the 4th position, representing the 4th minute. Now given two pairs of strings, you are supposed to help Sherlock decode the dating time.

    d&Hyscvnm

    • A1 = 能被5整除的数字中存有偶数的和;
    • A2

      将被5除后余1的数字按给出顺序进行交错求和,即总计n1-n2 n3-n4...;
    • A3 = 被5除后余2的数字的个数;
    • Bora= 被5除后余3的数字的平平均数量,精确到小数点后1位;
    • A5 = 被5除后余4的数字中最大数字。

    Input:

    Sample Output:

    Input:

    Each input file contains one test case. Each case gives 4 non-empty strings of no more than 60 characters without white space in 4 lines.

    THU 14:04

    每一种输入包蕴1个测试用例。每种测试用例先给出二个不抢先一千的正整数N,随后给出N个不超越一千的待分类的正整数。数字间以空格分隔。

    Output:

     1 #include <cstdio>
     2 #include <cstring>
     3 
     4 int main()
     5 {
     6     char week[7][5] = {"MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"};
     7     char str1[70], str2[70], str3[70], str4[70];
     8     gets(str1), gets(str2), gets(str3), gets(str4);
     9 
    10     int len1 = strlen(str1), len2 = strlen(str2), len3 = strlen(str3), len4 = strlen(str4);
    11     int i;
    12     for(i=0; i<len1&&i<len2;   i) {
    13         if(str1[i]==str2[i] && str1[i]>='A' && str1[i]<='G') {
    14             printf("%s ", week[str1[i]-'A']);
    15             break;
    16         }
    17     }
    18     for(  i; i<len1&&i<len2;   i) {
    19         if(str1[i] == str2[i]) {
    20             if(str1[i]>='0' && str1[i]<='9') {
    21                 printf("d:", str1[i]-'0');
    22                 break;
    23             } else if(str1[i]>='A' && str1[i]<='N') {
    24                 printf("d:", str1[i]-'A' 10);
    25                 break;
    26             }
    27         }
    28     }
    29     for(i=0; i<len3&&i<len4;   i) {
    30         if(str3[i] == str4[i]) {
    31             if((str3[i]>='A' && str3[i]<='Z') || (str3[i]>='a'&&str3[i]<='z')) {
    32                 printf("d", i);
    33                 break;
    34             }
    35         }
    36     }
    37 
    38     return 0;
    39 }
    

    Output:

    For each test case, print the decoded time in one line, in the format "DAY HH:MM", where "DAY" is a 3-character abbreviation for the days in a week -- that is, "MON" for Monday, "TUE" for Tuesday, "WED" for Wednesday, "THU" for Thursday, "FRI" for Friday, "SAT" for Saturday, and "SUN" for Sunday. It is guaranteed that the result is unique for each case.

     

    对给定的N个正整数,按标题须要统计A1~A5并在一行中各样输出。数字间以空格分隔,但行末不得有剩余空格。

    Sample Input:

    A1061. Dating (20)

    若里面某一类数字不设有,则在相应地方输出“N”。

    3485djDkxh4hhGE

    Description:

    Sample Input1:

    2984akDfkkkkggEdsb

    Sherlock Holmes received a note with some strange strings: "Let's date! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm". It took him only a minute to figure out that those strange strings are actually referring to the coded time "Thursday 14:04" -- since the first common capital English letter (case sensitive) shared by the first two strings is the 4th capital letter 'D', representing the 4th day in a week; the second common character is the 5th capital letter 'E', representing the 14th hour (hence the hours from 0 to 23 in a day are represented by the numbers from 0 to 9 and the capital letters from A to N, respectively); and the English letter shared by the last two strings is 's' at the 4th position, representing the 4th minute. Now given two pairs of strings, you are supposed to help Sherlock decode the dating time.

    13 1 2 3 4 5 6 7 8 9 10 20 16 18

    s&hgsfdk

    Input:

    Sample Output1:

    d&Hyscvnm

    Each input file contains one test case. Each case gives 4 non-empty strings of no more than 60 characters without white space in 4 lines.

    30 11 2 9.7 9

    Sample Output:

    Output:

    Sample Input2:

    THU 14:04

    For each test case, print the decoded time in one line, in the format "DAY HH:MM", where "DAY" is a 3-character abbreviation for the days in a week -- that is, "MON" for Monday, "TUE" for Tuesday, "WED" for Wednesday, "THU" for Thursday, "FRI" for Friday, "SAT" for Saturday, and "SUN" for Sunday. It is guaranteed that the result is unique for each case.

    8 1 2 4 5 6 7 9 16

     1 #include <cstdio> 2 #include <cstring> 3  4 #define MaxSize 100 5 char str1[MaxSize], str2[MaxSize], str3[MaxSize], str4[MaxSize]; 6 char date[7][5] = {"MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"}; 7  8 int main() 9 {10     //freopen("E:\Temp\input.txt", "r", stdin);11 12     gets, gets, gets, gets;13 14     int i = 0, len1 = strlen, len2 = strlen, len3 = strlen, len4 = strlen;15     for(; i<len1&&i<len2;   i) {16         if(str1[i]==str2[i] && str1[i]>='A'&& str1[i]<='G') {17             printf("%s ", date[str1[i]-'A']);18             break;19         }20     }21     for(  i; i<len1&&i<len2;   i) {22         if(str1[i]==str2[i]) {23             if(str1[i]>='0' && str1[i]<='9') {24                 printf("d:", str1[i]-'0');25                 break;26             } else if(str1[i]>='A' && str1[i]<='N') {27                 printf("d:", str1[i]-'A' 10);28                 break;29             }30         }31     }32     for(i=0; i<len3&&i<len4;   i) {33         if(str3[i] == str4[i]) {34             if((str3[i]>='a'&&str1[i]<='z') || (str3[i]>='A'&&str3[i]<='Z')) {35                 printf("d", i);36                 break;37             }38         }39     }40 41     return 0;42 }
    

    Sample Input:

    Sample Output2:

    3485djDkxh4hhGE

    N 11 2 N 9

    2984akDfkkkkggEdsb

     1 #include <cstdio>
     2 
     3 #define MaxSize 5
     4 
     5 int List[MaxSize], ans[MaxSize];
     6 
     7 int main()
     8 {
     9     //freopen("E:\Temp\input.txt", "r", stdin);
    10 
    11     int N, temp;
    12     scanf("%d", &N);
    13     for(int i=0; i<N;   i) {
    14         scanf("%d", &temp);
    15         if(temp%5 == 0) {
    16             if(temp%2 == 0) {
    17                 ans[0]  = temp;
    18                 List[0]  ;
    19             }
    20         } else if(temp%5 == 1) {
    21             if(List[1]%2 == 0) {
    22                 ans[1]  = temp;
    23             } else {
    24                 ans[1] -= temp;
    25             }
    26             List[1]  ;
    27         } else if(temp%5 == 2) {
    28             List[2]  ;
    29         } else if(temp%5 == 3) {
    30             ans[3]  = temp;
    31             List[3]  ;
    32         } else {
    33             if(temp > ans[4]) {
    34                 ans[4] = temp;
    35             }
    36             List[4]  ;
    37         }
    38     }
    39 
    40     if(List[0] == 0) {
    41         printf("N ");
    42     } else {
    43         printf("%d ", ans[0]);
    44     }
    45     if(List[1] == 0) {
    46         printf("N ");
    47     } else {
    48         printf("%d ", ans[1]);
    49     }
    50     if(List[2] == 0) {
    51         printf("N ");
    52     } else {
    53         printf("%d ", List[2]);
    54     }
    55     if(List[3] == 0) {
    56         printf("N ");
    57     } else {
    58         printf("%.1f ", (double)ans[3]/List[3]);
    59     }
    60     if(List[4] == 0) {
    61         printf("Nn");
    62     } else {
    63         printf("%dn", ans[4]);
    64     }
    65 
    66     return 0;
    67 }
    

    s&hgsfdk

     

    d&Hyscvnm

    Sample Output:

    THU 14:04

     1 #include <cstdio>
     2 #include <cstring>
     3 
     4 #define MaxSize 100
     5 char str1[MaxSize], str2[MaxSize], str3[MaxSize], str4[MaxSize];
     6 char date[7][5] = {"MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"};
     7 
     8 int main()
     9 {
    10     //freopen("E:\Temp\input.txt", "r", stdin);
    11 
    12     gets(str1), gets(str2), gets(str3), gets(str4);
    13 
    14     int i = 0, len1 = strlen(str1), len2 = strlen(str2), len3 = strlen(str3), len4 = strlen(str4);
    15     for(; i<len1&&i<len2;   i) {
    16         if(str1[i]==str2[i] && str1[i]>='A'&& str1[i]<='G') {
    17             printf("%s ", date[str1[i]-'A']);
    18             break;
    19         }
    20     }
    21     for(  i; i<len1&&i<len2;   i) {
    22         if(str1[i]==str2[i]) {
    23             if(str1[i]>='0' && str1[i]<='9') {
    24                 printf("d:", str1[i]-'0');
    25                 break;
    26             } else if(str1[i]>='A' && str1[i]<='N') {
    27                 printf("d:", str1[i]-'A' 10);
    28                 break;
    29             }
    30         }
    31     }
    32     for(i=0; i<len3&&i<len4;   i) {
    33         if(str3[i] == str4[i]) {
    34             if((str3[i]>='a'&&str1[i]<='z') || (str3[i]>='A'&&str3[i]<='Z')) {
    35                 printf("d", i);
    36                 break;
    37             }
    38         }
    39     }
    40 
    41     return 0;
    42 }
    

     

    本文由新葡亰496net发布于奥门新萄京娱乐场,转载请注明出处:pat模拟习题集,字符串处理习题集

    关键词:

上一篇:你慌了吗,为什么要学习Python

下一篇:没有了