第一个计算星期的,我把问题复杂化,以为大写字母是A到Z,结果到G就可以了。
这题的难点就是分清大些写字符条件以及数字。
#include<iostream>
using namespace std;
int main()
{
string s[4];
for(int i=0;i<4;i++)
cin>>s[i];
int len1=s[0].length();
int len2=s[1].length();
int len3=s[2].length();
int len4=s[3].length();
if(len1>len2)
len1=len2;
if(len3>len4)
len3=len4;
int k=0;
int h;
for(int i=0;i<len1;i++)
{
if(s[0][i]==s[1][i]&&s[0][i]>='A'&&s[0][i]<='G'&&k==0)
k=(s[0][i]-'A'+1);
else if(s[0][i]==s[1][i]&&k!=0)
{
if(s[0][i]>='0'&&s[0][i]<='9')
{
h=s[0][i]-'0';
break;
}
else if(s[0][i]>='A'&&s[0][i]<='N')
{
h=s[0][i]-'A'+10;
break;
}
}
}
int t;
for(int i=0;i<len3;i++)
{
if(s[2][i]==s[3][i]&&s[2][i]>='a'&&s[2][i]<='z'||s[2][i]==s[3][i]&&s[2][i]>='A'&&s[2][i]<='Z')
{
t=i;
break;
}
}
string arr[8];
arr[1]="MON",arr[2]="TUE",arr[3]="WED",arr[4]="THU",arr[5]="FRI",arr[6]="SAT",arr[7]="SUN";
cout<<arr[k]<<" ";
printf("%02d:%02d",h,t);
return 0;
}