大严 • 15小时前
using namespace std; int a[17]={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2}; char j[11]={'1', '0', 'X', '9', '8', '7', '6', '5' ,'4','3' ,'2'}; int main(){
int n;
cin>>n;
while(n--)
{
string s;
cin>>s;
int y=(s[6]-'0')*1000+(s[7]-'0')*100+(s[8]-'0')*10+(s[9]-'0');
int m=(s[10]-'0')*10+(s[11]-'0');
int d=(s[12]-'0')*10+(s[13]-'0');
if(y<1900||y>2006)
{
cout<<"Y"<<endl;
continue;
}
if(m<1||m>12)
{
cout<<"M"<<endl;
continue;
}
if(m==1||m==3||m==5||m==7||m==8||m==10||m==12)
{
if(d<1||d>31)
{
cout<<"D"<<endl;
continue;
}
}
if(m==4||m==6||m==9||m==11)
{
if(d<1||d>30)
{
cout<<"D"<<endl;
continue;
}
}
if(m==2)
{
if(y%4==0)
{
if(d<1||d>29)
{
cout<<"D"<<endl;
continue;
}
}
else
{
if(d<1||d>28)
{
cout<<"D"<<endl;
continue;
}
}
}
int sum=0;
for(int i=0;i<s.size();i++)
{
sum+=a[i]*(s[i]-'0');
}
int yu=sum%11;
if(j[yu]==s[17])
{
cout<<"T"<<endl;
}
else
{
s[17]=j[yu];
cout<<s<<endl;
}
}
return 0;
}
评论:
请先登录,才能进行评论