多吃点儿


私信TA

用户名:2021984130518

访问量:547

签 名:

等  级
排  名 269
经  验 5836
参赛次数 5
文章发表 13
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

解题思路:

注意事项:

参考代码:

#include <iostream>
using namespace std;
int main(){
    char arr[8];
    scanf("%s",&arr);
    int year=0,mon=0,day=0;
    int s=1;
    int month[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}; 
    for(int i=3;i>=0;i--){//将year,mon,day转化为整数 
        year=year+(arr[i]-'0')*s;
        s=s*10;
    }
    s=1;
    for(int i=5;i>=4;i--){
        mon=mon+(arr[i]-'0')*s;
        s=s*10;
    }
    s=1;
    for(int i=7;i>=6;i--){
        day=day+(arr[i]-'0')*s;
        s=s*10;
    }
    int year1=0,mon1=0,day1=0;
    int year2=0,mon2=0,day2=0;
    int flag1=0,flag2=0;
    while(flag1==0||flag2==0){
        if((year%4==0&&year%100!=0)||(year%100==0)){
            month[2]=29;
        }else {
            month[2]=28;
        }
        day++;
        if(day==month[mon]+1){
            day=1;
            mon++;
        }
        if(mon==13){
            year++;
            mon=1;
        }
        int a=year/10/10/10%10;
        int b=year/10/10%10;
        int c=year/10%10;
        int d=year%10;
        int e=mon/10%10;
        int f=mon%10;
        int g=day/10%10;
        int h=day%10;
        if(a==h&&b==g&&c==f&&d==e&&flag1==0){
            year1=year;
            mon1=mon;
            day1=day;
            flag1=1;
        }
        if(a==h&&b==g&&c==f&&d==e&&a==c&&b==d&&flag2==0){
            year2=year;
            mon2=mon;
            day2=day;
            flag2=1;
        }
    }
    printf("%d%02d%02d\n",year1,mon1,day1);
    printf("%d%02d%02d",year2,mon2,day2);
//    printf("%d %d %d",year,mon,day);
    return 0;
}


 

0.0分

0 人评分

  评论区

  • «
  • »