一枚渣子


私信TA

用户名:uq_44501180482

访问量:17088

签 名:

笨蛋

等  级
排  名 26
经  验 16375
参赛次数 1
文章发表 238
年  龄 0
在职情况 在职
学  校 河南科技大学
专  业

  自我简介:

渣子

import java.util.Scanner;
 
public class Main {
//代码比较多 但容易看懂
    public static void main(String[] args) {
 
        Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        int a=n/10000;
        int b=n%10000/100;
        int c=n%100;  
         
        
        for (int y =a; ; y++) {//通过
        int m=1;	if(y==a){m=b;}
            char[]c1=(y+"").toCharArray(); //2  1 00  01 02 12    31  30 29 
            if(c1[1]>'3'){ continue;}
            else if(c1[1]=='3'){  if(c1[0]>='2'){ continue;}}
            if(c1[2]>'2'){  if(c1[3]!='0'){ continue;}}
            else { if(c1[3]!='1'&&c1[3]!='0'){ continue;}}
            int day=0;
        for (int i = m; i <=12; i++){
            if(i==1||i==3||i==5||i==7||i==8||i==10||i==12){day=31;}
            else if(i==4||i==6||i==9||i==11){day=30;}
            else {
                if(isrun(y)) day=29; else day=28;
            }
          int today=1;
          if(i==b&&y==a) {today=c+1;}
            for (int j =today; j <=day; j++) {
                 int sum=y*10000+i*100+j;
                       if(ishw(sum)){
                            {   
                                 System.out.println(sum); 
                                 getd(a,b,c);
                                 return;
                            }
                         }
        }}
        }
        }
    public static  boolean isrun(int y){
        if(y%4==0&&y%100!=0||y%400==0) return true;
         return false;
    }
     
    public static  boolean ishw(int n){
    char[]c=(n+"").toCharArray();
    for (int i = 0; i < c.length/2; i++) {
        if(c[i]!=c[c.length-i-1]) return false;
    }
        return true;
}
 
     
    public static void getd(int y,int b,int c){
         
        boolean isexist=false;
        for (int i2 = 0; i2 < 1; i2++) {
            char[]c1=(y+"").toCharArray();
            if(c1[0]!=c1[2]||c1[1]!=c1[3]) continue;
            int[]aa=new int[8];
            aa[0]=c1[0];aa[2]=c1[0];aa[5]=c1[0];aa[7]=c1[0];
            aa[1]=c1[1];aa[3]=c1[1];aa[4]=c1[1];aa[6]=c1[1];
               
            int ab=(aa[4]-'0')*10+(aa[5]-'0');
            int ac=(aa[6]-'0')*10+(aa[7]-'0');
        if(ab<=0||ab>12) continue;
        if(ab==1||ab==3||ab==5||ab==7||ab==8||ab==10||ab==12){if(ac>31) continue;}
        else if(ab==4||ab==6||ab==9||ab==11){if(ac>30) continue;}
        else{ if(isrun(y)){if(ac>29) continue; } else { if(ac>28) continue; }}
             
        if(ab<b){continue; }
        else if(ab==b){if(ac<=c) continue; }
         
        for (int i = 0; i < aa.length; i++) {
                System.out.print(aa[i]-'0');
            }  
        System.out.println();
        isexist=true; break;
        }
 
        if(!isexist){
        for(int yii =y+1;; yii++) {//通过
            char[]c1=(yii+"").toCharArray();
            if(c1[0]!=c1[2]||c1[1]!=c1[3]) continue;
             
            int[]aa=new int[8];
            aa[0]=c1[0];aa[2]=c1[0];aa[5]=c1[0];aa[7]=c1[0];
            aa[1]=c1[1];aa[3]=c1[1];aa[4]=c1[1];aa[6]=c1[1];
               
            int ab=(aa[4]-'0')*10+(aa[5]-'0');
            int ac=(aa[6]-'0')*10+(aa[7]-'0');
        if(ab<=0||ab>12) continue;
        if(ab==1||ab==3||ab==5||ab==7||ab==8||ab==10||ab==12){if(ac>31) continue;}
        else if(ab==4||ab==6||ab==9||ab==11){if(ac>30) continue;}
        else{ if(isrun(yii)){if(ac>29) continue; } else {if(ac>28) continue; }
        }
            for (int i = 0; i < aa.length; i++) {
                System.out.print(aa[i]-'0');
            }
            System.out.println();
            isexist=true;
            break;
        }
        }
}
    }


 

0.0分

1 人评分

  评论区

  • «
  • »