一道经典的pta类型题
看题目戳这
卡条件很严格
注意界限
我用了stl里string可以用printf输出的特性
比如定义了一个string类的str
可以这样输出
string str="abcd";
printf("%s",str.c_str());
以下是通过代码
#include<bits/stdc++.h>
using namespace std;
string day[]={"","MON","TUE","WED","THU","FRI","SAT","SUN"};
int main(){
string a,b,c,d;
int i=0,j=0,cnt=0,ans1=0,ans2=100;
bool flag=0;
cin>>a>>b>>c>>d;
while(!ans1||ans2==100){
if(!ans1&&a[i]>='A'&&a[i]<='G'&&a[i]==b[i]){//注意界限是A-G
ans1=a[i]-'A'+1;
i++;
}
if(ans1&&((a[i]>='A'&&a[i]<='N')||(a[i]>='0'&&a[i]<='9'))&&a[i]==b[i]){//注意界限是A-N
if(a[i]>='A'&&a[i]<='Z'){
ans2=a[i]-'A'+10;
}else {
ans2=a[i]-'0';
}
break;
}
i++;
}
while(1){
if(c[j]==d[j]&&((c[j]>='A'&&c[j]<='Z')||(c[j]>='a'&&c[j]<='z'))){
break;
}
j++;
}
printf("%s %02d:%02d",day[ans1].c_str(),ans2,j);
return 0;
}