1061 Dating (20分)

Posted d-i-p

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1061 Dating (20分)相关的知识,希望对你有一定的参考价值。

1. 题目

技术图片

2. 思路

难点在于理解题目的意思

3. 注意点

DAY的确定是必须大写字母,而且大写字母在A~G之间而不是全部大写字母
hh是数字或者大写字母,如果是大写字母必须在A~N之间,而且是在找完DAY之后往后继续寻找
MM是字母

4. 代码

#include<cstdio>
#include<algorithm>
#include<string>
#include<vector>

using namespace std;

string s1, s2, s3, s4; 

string week[7] = {"MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"};

int main(){
    char cs1[61], cs2[61], cs3[61], cs4[61];
    scanf("%s %s %s %s", cs1, cs2, cs3, cs4);
    s1 = cs1;
    s2 = cs2;
    s3 = cs3;
    s4 = cs4;
    int i=0;
    int len = min(s1.length(), s2.length());
    char c1, c2;
    for(i=0;i<len;i++){
        if(s1[i] == s2[i] && s1[i] >= 'A' && s1[i] <= 'G'){
            c1 = s1[i];
            break;
        }
    }
    i++;
    for(;i<len;i++){
        if(s1[i] == s2[i] && (s1[i] >= 'A' && s1[i] <= 'N' || isdigit(s1[i]))){
            c2 = s1[i];
            break;
        }
    }
    len = min(s3.length(), s4.length());
    for(i=0;i<len;i++){
        if(s3[i] == s4[i] && isalpha(s3[i])){
            break;
        }
    }
    printf("%s ", week[c1-'A'].c_str());
    if(isalpha(c2)){
        printf("%d:", c2-'A'+10);
    }else{
        printf("%02d:", c2-'0');
    }
    printf("%02d", i);
}

以上是关于1061 Dating (20分)的主要内容,如果未能解决你的问题,请参考以下文章

1061 Dating (20分)

1061 Dating (20)

1061 Dating (20 分)难度: 一般 / 知识点: 模拟

PAT1061:Dating

1061. Dating (20)

PAT (Advanced Level) 1061. Dating (20)