ZZNU 1995: cots' times

题目描述

XX年XX月XX日小cot学会了回文数,eg:121.

小cot上课容易走神, 经常看看这个,瞧瞧那个.在小cot某一次走神的过程中他发现电子表上的时间也有回文数...

当然,并不是每次走神小cot都能看到的时间都是回文数, 小cot想知道下一个这样的时间是多少?

输入

输入包含多组测试数据, 每组一个时间 HH:MM 表示小cot走神的时间.

输出

输出下一个回文数的时间.(时间格式HH:MM).

样例输入
10:00

样例输出
10:01

提示
采用24小时制

题目链接:http://acm.zznu.edu.cn/problem.php?id=1995

********************************************

题意:给你一个时间,你输出下一个回文的时刻。

分析:一起来水题。

AC代码:

 1 #include <iostream>
 2 #include <algorithm>
 3 #include <cstdio>
 4 #include <cstring>
 5 #include<limits.h>
 6 #include <cmath>
 7 #include <cstdlib>
 8 #include <stack>
 9 #include <vector>
10 #include <queue>
11 #include <map>
12 
13 using namespace std;
14 
15 #define N 200000
16 #define INF 0x3f3f3f3f
17 #define met(a, b) memset (a, b, sizeof (a))////  met (dist, -1);
18 
19 int p(int x)
20 {
21     return (x+1)%24;
22 }
23 
24 int main()
25 {
26     int h,m,a;
27 
28    while(scanf("%d:%d",&h,&m) != EOF)
29    {
30        a=(h%10)*10+h/10;///回文后的数字
31 
32        if(a>m&&a>=0&&a<60)
33        {
34            printf("%02d:%02d
",h,a);
35             continue ;
36        }
37 
38        while(1)
39        {
40            h=p(h);
41            a=(h%10)*10+h/10;
42 
43            if(a>=0&&a<60)
44            {
45                printf("%02d:%02d
", h,a);
46                break;
47            }
48        }
49    }
50     return 0;
51 }

数据比较少,可以水过。

 1 #include <iostream>
 2 #include <algorithm>
 3 #include <cstdio>
 4 #include <cstring>
 5 #include<limits.h>
 6 #include <cmath>
 7 #include <cstdlib>
 8 #include <stack>
 9 #include <vector>
10 #include <queue>
11 #include <map>
12  
13 using namespace std;
14  
15 #define N 200000
16 #define INF 0x3f3f3f3f
17 #define met(a, b) memset (a, b, sizeof (a))////  met (dist, -1);
18  
19 char s[10];
20  
21 int main()
22 {
23     int h,f,d;
24  
25     while(scanf("%s", s) != EOF)
26     {
27        h=(s[0]-'0')*10+s[1]-'0';
28        f=(s[3]-'0')*10+s[4]-'0';
29        d=h*60+f;
30  
31        ///printf("%d
", d);
32  
33        if(d>=0&&d<70)
34         printf("01:10
");
35         else if(d>=70&&d<140)
36             printf("02:20
");
37         else if(d>=140&&d<210)
38              printf("03:30
");
39         else if(d>=210&&d<280)
40              printf("04:40
");
41         else if(d>=280&&d<350)
42              printf("05:50
");
43         else if(d>=350&&d<601)
44              printf("10:01
");
45         else if(d>=601&&d<671)
46             printf("11:11
");
47         else if(d>=671&&d<741)
48             printf("12:21
");
49         else if(d>=741&&d<811)
50             printf("13:31
");
51         else if(d>=811&&d<881)
52             printf("14:41
");
53         else if(d>=881&&d<951)
54             printf("15:51
");
55         else if(d>=951&&d<1202)
56             printf("20:02
");
57         else if(d>=1202&&d<1272)
58             printf("21:12
");
59         else if(d>=1272&&d<1342)
60             printf("22:22
");
61         else if(d>=1342&&d<1412)
62             printf("23:32
");
63         else if(d>=1412)
64             printf("00:00
");
65     }
66     return 0;
67 }
原文地址:https://www.cnblogs.com/weiyuan/p/5812698.html