import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Scanner;
import java.util.Set;
public class Main {
public static void main(String[] args){
Scanner cin=new Scanner(System.in);
String s=cin.next();
int[]months= {
0,31,28,31,30,31,30,31,31,30,31,30,31};
int year=Integer.parseInt(s.substring(0,4));
if(year<1)
{
System.out.println("no");
return;
}
if((year%4==0&&year%100!=0)||(year%400==0))
{
months[2]=29;
}
int month=Integer.parseInt(s.substring(4, 6));
int day=Integer.parseInt(s.substring(6));
if(month<1||month>12)
{
System.out.println("no");
return;
}
if(day>months[month]||day<0)
{
System.out.println("no");
return;
}
System.out.println("yes");
}
}
注意
1、year也有范围,一般是>=1
2、String转int也用Integer.parseInt();
3、Integer.parseInt();当字符串无法解析成整数时,要用try{}catch(Exception e){}