时间限制 1000 ms
内存限制 32768 KB
代码长度限制 100 KB
判断程序 Standard
(来自 小小)
题目描述
大侦探福尔摩斯接到一张奇怪的字条:“我们约会吧! 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
#include<stdio.h>
#include<string.h>
int
main(){
int
i=
0
,j=
0
,a=
0
,b=
0
,c=
0
,a1,a2,a3=
0
;
char
xq[
8
][
4
]={
"MON"
,
"TUE"
,
"WED"
,
"THU"
,
"FRI"
,
"SAT"
,
"SUN"
,
'\0'
};
char
aa[
61
],ab[
61
],ac[
61
],ad[
61
],cc[
5
];
scanf(
"%s%s%s%s"
,aa,ab,ac,ad);
while
(i<
1
){
if
(aa[a]==ab[a]&&aa[a]>=
'A'
&&aa[a]<=
'G'
){
i++;
break
;
}a++;
}b=a+
1
;
while
(i<
2
){
if
(aa[b]==ab[b]&&((aa[b]>=
'0'
&&aa[b]<=
'9'
)||(aa[b]>=
'A'
&&aa[b]<=
'N'
))){
i++;
break
;
}
b++;
}
while
(i<
3
){
if
(ac[c]==ad[c]&&ac[c]>=
'a'
&&ac[c]<=
'z'
||ac[c]<=
'A'
&&ac[c]>=
'Z'
){
i++;
break
;
}c++;
}
a=(
int
)aa[a]-
'A'
;
if
(aa[b]>=
'A'
&&aa[b]<=
'N'
)b=(
int
)aa[b]-
'A'
+
10
;
if
(aa[b]>=
'0'
&&aa[b]<=
'9'
)b=(
int
)aa[b]-
'0'
;
printf(
"%s "
,xq[a]);
if
(b>
9
)printf(
"%d:"
,b);
if
(b<
10
)printf(
"0%d:"
,b);
if
(c>
9
)printf(
"%d"
,c);
if
(c<
10
)printf(
"0%d"
,c);
return
0
;
}