题目链接:https://pintia.cn/problem-sets/994805260223102976/problems/994805308755394560

大侦探福尔摩斯接到一张奇怪的字条:我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm。大侦探很快就明白了,字条上奇怪的乱码实际上就是约会的时间星期四 14:04,因为前面两字符串中第 1 对相同的大写英文字母(大小写有区分)是第 4 个字母 D,代表星期四;第 2 对相同的字符是 E ,那是第 5 个英文字母,代表一天里的第 14 个钟头(于是一天的 0 点到 23 点由数字 0 到 9、以及大写字母 A 到 N 表示);后面两字符串第 1 对相同的英文字母 s 出现在第 4 个位置(从 0 开始计数)上,代表第 4 分钟。现给定两对字符串,请帮助福尔摩斯解码得到约会的时间。

输入格式:

输入在 4 行中分别给出 4 个非空、不包含空格、且长度不超过 60 的字符串。

输出格式:

在一行中输出约会的时间,格式为 DAY HH:MM,其中 DAY 是某星期的 3 字符缩写,即 MON 表示星期一,TUE 表示星期二,WED 表示星期三,THU 表示星期四,FRI 表示星期五,SAT 表示星期六,SUN 表示星期日。题目输入保证每个测试存在唯一解。

输入样例:

3485djDkxh4hhGE
2984akDfkkkkggEdsb
s&hgsfdk
d&Hyscvnm

输出样例:

THU 14:04

分析:只要清楚的题目要求,这道题就非常容易了。那我来说一下题目要求:

1.字符相等,而且字符必须是大写字母,且必须在'A' ~ 'G' 之间。(星期几)

2.字符相等,而且字符必须在'A' ~ 'N' 或 '0' ~ '9'之间 (小时)

3.字符相等, 而且必须是字母。(分钟)

清楚了判断条件, 这道题就非常简单了。

#include <iostream>
#include <cstdio>
#include <string>using namespace std;int main()
{string s1, s2, s3, s4;cin >> s1 >> s2 >> s3 >> s4;int len1 = s1.length() < s2.length() ? s1.length() : s2.length();    //s1 s2 两者中的最小长度int mark = 1;     //判断是否已经找到'星期几'char weekday, hour;int minute;int len2 = s3.length() < s4.length() ? s3.length() : s4.length();    //s3 s4 两者中的最小长度for(int i = 0; i < len1; i++){if(s1[i] == s2[i] && mark && s1[i] >= 'A' && s1[i] <= 'G')     //星期几{weekday = s1[i];mark = 0;switch(weekday)         //或者是if-else{case 'A' :cout << "MON ";break;case 'B' :cout << "TUE ";break;case 'C' :cout << "WED ";break;case 'D' :cout << "THU ";break;case 'E' :cout << "FRI ";break;case 'F' :cout << "SAT ";break;case 'G' :cout << "SUN ";break;}continue;}if(s1[i] == s2[i] && mark == 0 && ((s1[i]>='A' && s1[i]<='N') || (s1[i] >= '0' && s1[i] <= '9')))  //注这里不能使用isupper()函数  因为范围是'A' ~ 'N'{hour = s1[i];break;}}for(int i = 0; i < len2; i++){if(s3[i] == s4[i] && isalpha(s3[i]))     //必须是字母{minute = i;break;}}if(hour >= '0' && hour <= '9'){cout << '0' << hour << ':';}else{cout << hour - 'A' + 10 << ':';}printf("%02d", minute);return 0;
}

1014 福尔摩斯的约会 (20 分)测试点分析相关推荐

  1. 1014 福尔摩斯的约会 (20分) 测试点(全部的)

    题目链接:https://pintia.cn/problem-sets/994805260223102976/problems/994805308755394560 大侦探福尔摩斯接到一张奇怪的字条: ...

  2. 1014 福尔摩斯的约会 (20 分) Python和C++版本

    1014 福尔摩斯的约会 (20 分) 大侦探福尔摩斯接到一张奇怪的字条:我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hy ...

  3. C++学习之路 | PTA乙级—— 1014 福尔摩斯的约会 (20分)(精简)

    1014 福尔摩斯的约会 (20分) 大侦探福尔摩斯接到一张奇怪的字条:我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hys ...

  4. 1014 福尔摩斯的约会 (20 分)

    1014 福尔摩斯的约会 (20 分) 大侦探福尔摩斯接到一张奇怪的字条:我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hy ...

  5. 1014 福尔摩斯的约会 (20 分)|一道我认为烂透了的题

    1014 福尔摩斯的约会 (20 分) 大侦探福尔摩斯接到一张奇怪的字条:我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hy ...

  6. PAT乙类1014 福尔摩斯的约会 (20 分)

    一.题目 大侦探福尔摩斯接到一张奇怪的字条:我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm.大侦探很快就明白了 ...

  7. 希望PAT耗子尾汁:1014 福尔摩斯的约会 (20分)——22行代码AC

    立志用更少的代码做更高效的表达 Pat乙级最优化代码+题解+分析汇总-->传送门 大侦探福尔摩斯接到一张奇怪的字条:我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEd ...

  8. 【PAT (Basic Level) 】1014 福尔摩斯的约会 (20 分)

    大侦探福尔摩斯接到一张奇怪的字条: 我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm 大侦探很快就明白了,字条上 ...

  9. 1014 福尔摩斯的约会 (20分)

    输入样例: 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm 输出样例: THU 14:04 # -*- coding: ut ...

  10. 【PAT乙级】1014 福尔摩斯的约会 (20 分)【模拟 / 很坑】

    之前小号写过: https://blog.csdn.net/bettle_king/article/details/116546412 这里就直接复制过来了 https://pintia.cn/pro ...

最新文章

  1. VS Code 安装 Go 插件、自定义扩展配置、断点调试
  2. NDK JNI Android Studio开发与调试DEMO(三)(生成 .so 文件)
  3. Swift版iOS游戏框架Sprite Kit基础教程下册
  4. 关于Redis的数据迁移(三种方法)
  5. C#Socket开发TCP详解(二)
  6. mvc html传参数乱码,SpringMVC Controller 接收页面传递的中文参数出现乱码
  7. React v16.0正式版发布
  8. DELPHI GetClassName - 获取指定窗口的类名
  9. 商标申请的企业法律服务可避免法律风险
  10. gflags.lib(gflags.obj) : error LNK2001: 无法解析的外部符号 __imp_PathMatchSpecA
  11. mongodb 如何更改端口号_Python 操作 MongoDB 数据库介绍
  12. Android Studio 常用快捷键和使用技巧
  13. DASCTF X GFCTF 2022十月挑战赛 WriteUp
  14. 当前HNB资讯加热不燃烧产品与传统中烟加热卷烟有哪些区别?
  15. 成功解决python.exe 无法找到程序入口 无法定位程序输入点
  16. 海量搜索服务架构搭建2-SolrCloud集群搭建
  17. 【fread/fwrite】C语言API之fread/fwrite函数详解
  18. 省赛培训-RHEL6-v3.0
  19. oracle2108什么意思,Oracle存储过程(包:PACK_KPI_KERNEL For YS三度评价体系)
  20. 专注做事,竟然也成为我们的稀缺能力

热门文章

  1. RPKM FPKM TPM RSEM
  2. pycharm配置环境
  3. 基于舒适性的速度规划。对路面进行分级,基于路面状况对舒适性的影响对速度进行规划
  4. 【明解C语言】之do... while循环
  5. 耕村人冷吃千层肚 0脂低卡 夜宵吃不要太酥服
  6. 杭电联赛六 7034 Array
  7. ThinkPad R400 windows 2008 下网卡、蓝牙驱动程序安装过程记录
  8. 站在国企、民企的岔路口
  9. Niobe开发板:基于OpenHarmony操作系统进行多线程(多任务)开发
  10. 同步机制—读者写者问题