PAT Basic 1014. 福尔摩斯的约会 (20)

时间限制
100 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
CHEN, Yue

大侦探福尔摩斯接到一张奇怪的字条:“我们约会吧! 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

解答:
星期week -> 前两个输入的第一个相等的大写字母且小于F
小时hour -> 从星期位置之后,第一个相等的数字或者大写的A到N之间的字母;
分钟minute -> 后两个输入的第一个相等的英文字符的位置

#include <iostream>
#include <string>
#include <cmath>
#include <cstdio>//ACusing namespace std;string weeks[7]={"MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"};
string four_input[4];int main(){for(int i=0;i<4;i++) cin>>four_input[i];int len1=four_input[0].length();int len2=four_input[1].length();int min_len=min(len1, len2);char a,b;int week, hour, minute;int i;for(i=0;i<min_len;i++){a=four_input[0][i];b=four_input[1][i];if(a==b){if(isupper(a)&&a<=71){week=a-'A';break;}}}for(i=i+1;i<min_len;i++){a=four_input[0][i];b=four_input[1][i];if(a==b){if(a>=48&&a<=57){hour=a-'0';break;}else if(a>=65&&a<=78){hour=10+(a-'A');break;}}}len1=four_input[2].length();len2=four_input[3].length();min_len=min(len1, len2);for(i=0;i<min_len;i++){a=four_input[2][i];b=four_input[3][i];if(a==b){if(isalpha(a)){minute=i;}}}cout<<weeks[week]<<" ";if(hour<10) cout<<"0"<<hour<<":";else cout<<hour<<":";if(minute<10) cout<<"0"<<minute<<endl;else cout<<minute<<endl;return 0;
}

PAT Basic 1014相关推荐

  1. PAT (Basic Level) Practice (中文)答案合集

    准备复试专用,目标刷完全部中文题! 1001 害死人不偿命的(3n+1)猜想 (15 分) 卡拉兹(Callatz)猜想: 对任何一个正整数 n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把 ...

  2. 【题解】PAT (Basic Level) Practice (中文)

    互联网行业的小白,写博客的目的是为了记录自己的学习过程.对自己学习中所犯的错误做一个总结.由于水平有限,博客中难免会有一些错误出现,有纰漏之处恳请各位大佬不吝赐教! PAT Basic Level P ...

  3. PAT乙级真题全集-PAT (Basic Level) Practise (中文)

    1001. 害死人不偿命的(3n+1)猜想 (15) 卡拉兹(Callatz)猜想: 对任何一个自然数n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把(3n+1)砍掉一半.这样一直反复砍下去, ...

  4. PAT (Basic Level) Practise (中文)-1025. 反转链表 (25)

    PAT (Basic Level) Practise (中文)-1025. 反转链表 (25)   http://www.patest.cn/contests/pat-b-practise/1025 ...

  5. PAT (Basic Level) Practise (中文)-1034. 有理数四则运算(20)

    PAT (Basic Level) Practise (中文)-1034. 有理数四则运算(20)  http://www.patest.cn/contests/pat-b-practise/1034 ...

  6. PAT basic level 答案+解题思路+难点 (个人刷题记录)

    PAT basic level 使用语言:C++ 仅记录一下自己刷题过程的心得体会 永远保持更新(期待更好的解法) 可能有些题没有(那就是我还没做出来,以后会更的!) 欢迎大家与我讨论交流√ 题目序列 ...

  7. 可优化-PAT (Basic Level) Practice Python解法 1026 程序运行时间(时间进位/四舍五入Tobe解决)

    可优化-PAT (Basic Level) Practice Python解法 1026 程序运行时间(时间进位/四舍五入Tobe解决) c1, c2 = map(int,input().split( ...

  8. 1001 害死人不偿命的(3n+1)猜想 (15分) PAT (Basic Level) Practice (中文)C语言版

    PAT (Basic Level) Practice (中文) 1001 害死人不偿命的(3n+1)猜想 (15分) 卡拉兹(Callatz)猜想: 对任何一个正整数 n,如果它是偶数,那么把它砍掉一 ...

  9. 卡拉兹(Callatz)猜想,PAT(Basic Level) Practise NO.1001

    PAT(Basic Level) Practise NO.1001 卡拉兹(Callatz)猜想: 对任何一个自然数n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把(3n+1)砍掉一半. 这样 ...

最新文章

  1. java设置access-allow_Java Web如何设置多个Access-Control-Allow-Origin
  2. 逆向了一下hh.exe
  3. hdu 1054 Strategic Game 二分图最小点覆盖
  4. python自动化框架pytest pdf_Python 自动化测试框架 unittest 和 pytest 对比
  5. C++中STL-vector的用法
  6. 使用Ueditor点击上传图片时显示延迟的问题
  7. 大数据挑战与NoSQL数据库技术pdf
  8. 一共有多少种操作系统
  9. 【CF1325E】 Ehab's REAL Number Theory Problem(思维+最小环bfs)
  10. 小程序源码:全新外卖侠cps5.6全套微信小程序源码下载-多玩法安装简单
  11. 最好听的男孩英文名字大全
  12. Excel 快速填充空白
  13. VS 自带DLL注册工具注册Dll
  14. Axure RP 9操作界面介绍【教程一】
  15. mysql 父子关系查询,父子关系-SQL查询
  16. 程序员是一群什么样的人,1024程序员节调查报告」这群IT人有点东西哟
  17. 【Unity Shader 中Pass相关介绍_第二篇】
  18. 玩转华为ENSP模拟器系列 | 配置L3VdPdNd迭代SR-BE隧道示例
  19. 设置导航栏字体大小,颜色和加粗字体的方法
  20. 高速PCB设计指南系列(四)

热门文章

  1. 无人驾驶1——自动驾驶硬件、软件概述
  2. (20210208已解决)numexpr.utils:NumExpr defaulting to 4 threads
  3. win11电脑安装ie11浏览器
  4. 衡量 DevOps 成功与否的重要度量指标
  5. 如何取淘宝登录的完整cookies
  6. PTA 1018 锤子剪刀布 (c语言)
  7. wxwidget编译安装_win7下wxwidgets开发环境配置
  8. win 2012 iis 401 - 未授权: 由于凭据无效,访问被拒绝。您无权使用所提供的凭据查看此目录或页面,百度编辑器等图片无法显示
  9. Freemaker生成静态html页面
  10. 1-Click PC Tuneup软件-破解实录-[附加篇]编写注册机