zoukankan      html  css  js  c++  java
  • 历届试题 回文日期

    又是喜闻乐见的日期题。

    枚举年份,构造回文日期和ABABBABA型的回文日期,判断构造出的日期是否合法。

    注意构造出的日期不能和当前日期相等。

    int month[2][13]={
        {0,31,28,31,30,31,30,31,31,30,31,30,31},
        {0,31,29,31,30,31,30,31,31,30,31,30,31}
    };
    
    bool isLeap(int year)
    {
        return year % 4 == 0 && year % 100 || year % 400 == 0;
    }
    
    bool check(int yy,int mm,int dd)
    {
        if(mm == 0 || mm > 12) return false;
        if(dd == 0 || dd > month[isLeap(yy)][mm]) return false;
        return true;
    }
    
    int main()
    {
        int n;
        cin>>n;
    
        int yy=n/10000,mm=n%10000/100,dd=n%10000%100;
        for(int i=yy;i<10000;i++)
        {
            int t=i,res=0;
            while(t)
            {
                res=res*10+t%10;
                t/=10;
            }
    
            int yy=i,mm=res/100,dd=res%100;
            int m=yy*10000+mm*100+dd;
            if(m != n && check(yy,mm,dd))
            {
                printf("%d%02d%02d
    ",yy,mm,dd);
                break;
            }
        }
    
        for(int i=yy/100;i<100;i++)
        {
            int t=i*100+i,res=0;
            while(t)
            {
                res=res*10+t%10;
                t/=10;
            }
    
            int yy=i*100+i,mm=res/100,dd=res%100;
            int m=yy*10000+mm*100+dd;
            if(m != n && check(yy,mm,dd))
            {
                printf("%d%02d%02d
    ",yy,mm,dd);
                break;
            }
        }
        //system("pause");
        return 0;
    }
    
  • 相关阅读:
    Flink之DataStreamAPI入门
    Spark底层原理简化版
    Spark调优
    Flink架构及其工作原理
    Kafka总结
    leetcode数学相关
    程序员的修炼之道5
    数据库连库建表
    完成了web系统
    即将完成大型web系统
  • 原文地址:https://www.cnblogs.com/fxh0707/p/14672219.html
Copyright © 2011-2022 走看看