题意
1,2字符串第一个相同的大写字母代表星期几,第二相同的大写代码代表时间小时
3,4字符串第一个相同字符的位置代表时间分
源码
#include<iomanip>
using namespace std;
bool isEngLetter(char x){
if(x<='z'&&x>='a') return true;
if(x<='Z'&&x>='A') return true;
return false;
}
bool isAN(char x){
if(x<='N'&&x>='A') return true;
return false;
}
bool isAG(char x){
// if(x<='g'&&x>='a') return true;
if(x<='G'&&x>='A') return true;
return false;
}
bool isNumber(char x){
if(x<='9'&&x>='0') return true;
return false;
}
int main(){
string str1,str2,str3,str4;
int len1,len2;
cin>>str1>>str2>>str3>>str4;
len1=str1.length();
len2=str2.length();
char day,hour;
int count=0;
for(int i=0;i<len1&&i<len2;i++){
if(count==0){
if(str1[i]==str2[i]&&isEngLetter(str1[i])){
if(isAG(str1[i])){
day=str1[i];
count++;
}
}
}
else{
if(str1[i]==str2[i]){
// cout<<str1[i]<<endl;
if(isAN(str1[i])||isNumber(str1[i])){
hour=str1[i];
// cout<<str1[i]<<endl;
break;
}
}
}
}
//cout<<hour<<endl;
switch(day){
case 'A':
//case 'a':
cout<<"MON "; break;
case 'B':
//case 'b':
cout<<"TUE "; break;
case 'C':
// case 'c':
cout<<"WED "; break;
case 'D':
//case 'd':
cout<<"THU "; break;
case 'E':
// case 'e':
cout<<"FRI "; break;
case 'F':
// case 'f':
cout<<"SAT "; break;
case 'G':
// case 'g':
cout<<"SUN "; break;
}
switch(hour){
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
cout<<setw(2)<<setfill('0')<<hour-'0'<<":";
break;
case 'A':
case 'B':
case 'C':
case 'D':
case 'E':
case 'F':
case 'G':
case 'H':
case 'I':
case 'J':
case 'K':
case 'L':
case 'M':
case 'N':
cout<<setw(2)<<setfill('0')<<hour-'A'+10<<":";
break;
// case 'a':
/* case 'b':
case 'c':
case 'd':
case 'e':
case 'f':
case 'g':
case 'h':
case 'i':
case 'j':
case 'k':
case 'l':
case 'm':
case 'n':
cout<<setw(2)<<setfill('0')<<hour-'a'+10<<":";
break;*/
}
len1=str3.length();
len2=str4.length();
//cout<<len1<<" "<<len2;
int minute;
for(int i=0;i<len1&&i<len2;i++){
//cout<<str3[i]<<endl;
if(str3[i]==str4[i]&&isEngLetter(str3[i])){
minute=i;
break;
}
}
cout<<setw(2)<<setfill('0')<<minute<<endl;
}