PAT 乙级 1014

来源:互联网 发布:云计算技术 编辑:程序博客网 时间:2024/06/07 04:03

第一个计算星期的,我把问题复杂化,以为大写字母是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;}


原创粉丝点击