RE求助
查看原帖
RE求助
312121
shimao楼主2020/8/14 18:07
#include<bits/stdc++.h>
using namespace std;
const int days[]={0,31,28,31,30,31,30,31,31,30,31,30,31};

int main()
{
	string s;
	cin>>s;
	
	map<string,int> mp;
	for(int i=0;i+9<s.size();++i){
		if(s[i]!='-'&&
		s[i+1]!='-'&&
		s[i+2]=='-'&&
		s[i+3]!='-'&&
		s[i+4]!='-'&&
		s[i+5]=='-'&&
		s[i+6]!='-'&&
		s[i+7]!='-'&&
		s[i+8]!='-'&&
		s[i+9]!='-'){
			int d=strtol(s.c_str(),0,10);
			int m=strtol(s.c_str()+(i+3),0,10);
			int y=strtol(s.substr(i+6,4).c_str(),0,10);
			
			
			if(y>=2013&&y<=2015&&m>0&&m<=12&&d>0&&d<=days[m])
				++mp[s.substr(i,10)];
		}
	}
	map<string,int>::iterator it,it2;
	for(it=it2=mp.begin();it!=mp.end();++it){
		if(it->second>it2->second)
			it2=it;
	}
	cout<<it2->first;
	return 0;
}

Process exited after 12.05 seconds with return value 3221225477

咋回事

2020/8/14 18:07
加载中...