超级大暴力,神奇的思路,88分玄关
查看原帖
超级大暴力,神奇的思路,88分玄关
1164892
liuyuhan123bc楼主2024/8/4 15:19
#include<cstring>
#include<string>
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<vector>
#include<cmath>
using namespace std;
string s[4]; 
int y[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int u[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};
int r(int x){
	if(x%4==0&&x%100!=0||x%400==0) return 1;
	return 0;
}
int main(){
	int a,b,c;
	scanf("%d/%d/%d",&a,&b,&c);
	int cnt=0;
	if(b>=1&&b<=12){
		string k;
		if(a<10) k+='0';
		k+=to_string(a);
		int d=r(a),ans=0;
		if(d==1) ans++;
		if(ans==1){
			if(c<=u[b]){
				if(a>=60){
					cnt++;
					if(b<10){
						if(c<10){
							s[cnt]="19"+k+"-0"+to_string(b)+"-0"+to_string(c);
						}
						else s[cnt]="19"+k+"-0"+to_string(b)+"-"+to_string(c);
					} 
					else{
						if(c<10){
							s[cnt]="19"+k+"-"+to_string(b)+"-0"+to_string(c);
						}
						else s[cnt]="19"+k+"-"+to_string(b)+"-"+to_string(c);
					}
				}
				if(a<=59){
					cnt++;
					if(b<10){
						if(c<10){
							s[cnt]="20"+k+"-0"+to_string(b)+"-0"+to_string(c);
						}
						else s[cnt]="20"+k+"-0"+to_string(b)+"-"+to_string(c);
					} 
					else{
						if(c<10){
							s[cnt]="20"+k+"-"+to_string(b)+"-0"+to_string(c);
						}
						else s[cnt]="20"+k+"-"+to_string(b)+"-"+to_string(c);
					}
				}
			}
		}
		if(ans==0){
			if(c<=y[b]){
				if(a>=60){
					cnt++;
					if(b<10){
						if(c<10){
							s[cnt]="19"+k+"-0"+to_string(b)+"-0"+to_string(c);
						}
						else s[cnt]="19"+k+"-0"+to_string(b)+"-"+to_string(c);
					} 
					else{
						if(c<10){
							s[cnt]="19"+k+"-"+to_string(b)+"-0"+to_string(c);
						}
						else s[cnt]="19"+k+"-"+to_string(b)+"-"+to_string(c);
					}
				}
				if(a<=59){
					cnt++;
					if(b<10){
						if(c<10){
							s[cnt]="20"+k+"-0"+to_string(b)+"-0"+to_string(c);
						}
						else s[cnt]="20"+k+"-0"+to_string(b)+"-"+to_string(c);
					} 
					else{
						if(c<10){
							s[cnt]="20"+k+"-"+to_string(b)+"-0"+to_string(c);
						}
						else s[cnt]="20"+k+"-"+to_string(b)+"-"+to_string(c);
					}
				}
			}
		}
		d=r(c),ans=0,k.clear();
		if(c<10) k+='0';
		k+=to_string(c);
		if(d==1) ans++;
		if(ans==1){
			if(a<=u[b]){
				if(c>=60){
					cnt++;
					if(b<10){
						if(a<10){
							s[cnt]="19"+k+"-0"+to_string(b)+"-0"+to_string(a);
						}
						else s[cnt]="19"+k+"-0"+to_string(b)+"-"+to_string(a);
					} 
					else{
						if(a<10){
							s[cnt]="19"+k+"-"+to_string(b)+"-0"+to_string(a);
						}
						else s[cnt]="19"+k+"-"+to_string(b)+"-"+to_string(a);
					}
				}
				if(c<=59){
					cnt++;
					if(b<10){
						if(a<10){
							s[cnt]="20"+k+"-0"+to_string(b)+"-0"+to_string(a);
						}
						else s[cnt]="20"+k+"-0"+to_string(b)+"-"+to_string(a);
					} 
					else{
						if(a<10){
							s[cnt]="20"+k+"-"+to_string(b)+"-0"+to_string(a);
						}
						else s[cnt]="20"+k+"-"+to_string(b)+"-"+to_string(a);
					}
				}
			}
		}
		if(ans==0){
			if(a<=y[b]){
				if(c>=60){
					cnt++;
					if(b<10){
						if(a<10){
							s[cnt]="19"+k+"-0"+to_string(b)+"-0"+to_string(a);
						}
						else s[cnt]="19"+k+"-0"+to_string(b)+"-"+to_string(a);
					} 
					else{
						if(a<10){
							s[cnt]="19"+k+"-"+to_string(b)+"-0"+to_string(a);
						}
						else s[cnt]="19"+k+"-"+to_string(b)+"-"+to_string(a);
					}
				}
				if(c<=59){
					cnt++;
					if(b<10){
						if(a<10){
							s[cnt]="20"+k+"-0"+to_string(b)+"-0"+to_string(a);
						}
						else s[cnt]="20"+k+"-0"+to_string(b)+"-"+to_string(a);
					} 
					else{
						if(a<10){
							s[cnt]="20"+k+"-"+to_string(b)+"-0"+to_string(a);
						}
						else s[cnt]="20"+k+"-"+to_string(b)+"-"+to_string(a);
					}
				}
			}
		}
	}
	if(a>=1&&a<=12){
		int d=r(c),ans=0;
		string k;
		if(c<10) k+='0';
		k+=to_string(c);
		if(d==1) ans++;
		if(ans==1){
			if(b<=u[a]){
				if(c>=60){
					cnt++;
					if(a<10){
						if(b<10){
							s[cnt]="19"+k+"-0"+to_string(a)+"-0"+to_string(b);
						}
						else s[cnt]="19"+k+"-0"+to_string(a)+"-"+to_string(b);
					} 
					else{
						if(b<10){
							s[cnt]="19"+k+"-"+to_string(a)+"-0"+to_string(b);
						}
						else s[cnt]="19"+k+"-"+to_string(a)+"-"+to_string(b);
					}
				}
				if(c<=59){
					cnt++;
					if(a<10){
						if(b<10){
							s[cnt]="20"+k+"-0"+to_string(a)+"-0"+to_string(b);
						}
						else s[cnt]="20"+k+"-0"+to_string(a)+"-"+to_string(b);
					} 
					else{
						if(b<10){
							s[cnt]="20"+k+"-"+to_string(a)+"-0"+to_string(b);
						}
						else s[cnt]="20"+k+"-"+to_string(a)+"-"+to_string(b);
					}
				}
			}
		}
		if(ans==0){
			if(b<=y[a]){
				if(c>=60){
					cnt++;
					if(a<10){
						if(b<10){
							s[cnt]="19"+k+"-0"+to_string(a)+"-0"+to_string(b);
						}
						else s[cnt]="19"+k+"-0"+to_string(a)+"-"+to_string(b);
					} 
					else{
						if(b<10){
							s[cnt]="19"+k+"-"+to_string(a)+"-0"+to_string(b);
						}
						else s[cnt]="19"+k+"-"+to_string(a)+"-"+to_string(b);
					}
				}
				if(c<=59){
					cnt++;
					if(a<10){
						if(b<10){
							s[cnt]="20"+k+"-0"+to_string(a)+"-0"+to_string(b);
						}
						else s[cnt]="20"+k+"-0"+to_string(a)+"-"+to_string(b);
					} 
					else{
						if(b<10){
							s[cnt]="20"+k+"-"+to_string(a)+"-0"+to_string(b);
						}
						else s[cnt]="20"+k+"-"+to_string(a)+"-"+to_string(b);
					}
				}
			}
		}
	}
	sort(s+1,s+1+cnt);
	cout<<s[1]<<endl;
	for(int i=2;i<=cnt;i++){
		if(s[i]==s[i-1]) return 0;
		cout<<s[i]<<endl;
	}
    return 0;
}
2024/8/4 15:19
加载中...