为啥80
查看原帖
为啥80
324374
134679op楼主2022/8/14 08:55
#include<iostream>
#include<string>
using namespace std;
string s;
int ans;
int data[105]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int main(){
      cin >> s;
      int tmp1 = 0, tmp2 = 0, tmp3 = 0;
      for(int i=0;i<2;i++){
      	 if(i==0)  tmp1+=(s[i]-='0')*10;
		 else	tmp1+=(s[i]-='0');
	  }
	  if(tmp1==0){
	  	ans++;
	  	tmp1=1;
	  } 
	  if(tmp1>12){
	  	 ans++;
	  	 int a1=(tmp1/10)*10;
	  	 int a2=tmp1%10;
	  	 if(a2==1){
	  	 	tmp1==1;
		 }else if(a2==2){
		 	tmp1=12;
		 }else {
		 	int d1=data[a1], d2=data[a2];
		 	if(d1>d2)
		 	   tmp1=a1;
		 	else
		 	   tmp1=a2;
		 }
	  }
	  for(int i=3;i<5;i++){
      	 if(i==3)  tmp2=(s[i]-='0');
		 else	tmp3=(s[i]-='0');
	  }
	 //cout << tmp2 << "  " << tmp3 << endl;
	  if(tmp2*10+tmp3>data[tmp1]){
	  	 int a1=data[tmp1]/10;
	  	 int a2=data[tmp1]%10;
	  	 if(tmp2>a1) ans++;
	  	 else if(tmp3>a2&&tmp2>=a1) ans++;
	  	   //cout << a1 << ' ' << a2 << endl;
	  }
	  cout << ans;
	return 0;
}

2022/8/14 08:55
加载中...