1014 福爾摩斯的約會

2021-10-19 05:17:24 字數 3107 閱讀 9139

轉跳點:?

1014 福爾摩斯的約會 (20分)

大偵探福爾摩斯接到一張奇怪的字條:我們約會吧! 3485djdkxh4hhge 2984akdfkkkkggedsb s&hgsfdk d&hyscvnm。大偵探很快就明白了,字條上奇怪的亂碼實際上就是約會的時間星期四 14:04,因為前面兩字串中第 1 對相同的大寫英文本母(大小寫有區分)是第 4 個字母d,代表星期四;第 2 對相同的字元是e,那是第 5 個英文本母,代表一天裡的第 14 個鐘頭(於是一天的 0 點到 23 點由數字 0 到 9、以及大寫字母an表示);後面兩字串第 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

夏洛克的問題就應該找華生,(花生,捲福找你)。這道題其實不難。就是有幾個坑點

一周只有7天所以 只能是a~g。

防止多次判定成功的覆蓋。

從0開始數。

大概就這幾點,第二點有點難理解,我來舉個✪

假設輸入的前兩行資料如下:

fmopqrstna

fmopqrstna  

這裡輸出的結果因該是

sat 22

但如果被覆蓋的話就會有很多種可能,例如

mon 01

或者是sat 01

因為在這組輸入種有不止一組匹配的字元,所以導致了不斷的覆蓋。

其他都是些細節問題,例如輸出的時候只有一位的時候需要用0來補全,最後乙個輸出後面沒有空格……不叭叭了,貼**

1 #include 2 #include 3 #include 4 

5 const char *weekdays = ;

6 7 int main(void)

8 ;11 char buf[4][61];

12 13 for (int i = 0; i < 4; i++)

14

17 18 int i = 0, j = 0;

19 20 while (('\0' != buf[0][i] && '\0' != buf[1][j]) || ('\0' != buf[2][i]))

21

28 else if ('a' <= buf[0][i] && 'n' >= buf[0][i])

29

32 }

33 if (0 == count && buf[0][i] == buf[1][j])

34

39 }

40 if (-1 == password[2] && buf[2][i] == buf[3][j] && ((buf[2][i] >= 'a' && buf[2][i] <= 'z') || (buf[2][i] >= 'a' && buf[2][i] <= 'z')))

41

44 i++;

45 j++;

46 }

47 48 printf("%s %02d:%02d\n", weekdays[password[0]], password[1], password[2]);

49 return 0;

50 }

pta不易,諸君共勉!

1014 福爾摩斯的約會 (20分)

大偵探福爾摩斯接到一張奇怪的字條:我們約會吧! 3485djdkxh4hhge 2984akdfkkkkggedsb s&hgsfdk d&hyscvnm。大偵探很快就明白了,字條上奇怪的亂碼實際上就是約會的時間星期四 14:04,因為前面兩字串中第 1 對相同的大寫英文本母(大小寫有區分)是第 4 個字母d,代表星期四;第 2 對相同的字元是e,那是第 5 個英文本母,代表一天裡的第 14 個鐘頭(於是一天的 0 點到 23 點由數字 0 到 9、以及大寫字母an表示);後面兩字串第 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

1014 福爾摩斯的約會

題目是pat乙級 思路 模擬題 按照條件找到相應的字元就行了。訓練目的 字串操作 題目描述 大偵探福爾摩斯接到一張奇怪的字條 我們約會吧!3485djdkxh4hhge 2984akdfkkkkggedsb s hgsfdk d hyscvnm 大偵探很快就明白了,字條上奇怪的亂碼實際上就是約會的時...

1014 福爾摩斯的約會

時間限制 100 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 chen,yue 大偵探福爾摩斯接到一張奇怪的字條 我們約會吧!3485djdkxh4hhge 2984akdfkkkkggedsb s hgsfdk d hyscvnm 大偵探很快就明白...

1014 福爾摩斯的約會

原題描述 大偵探福爾摩斯接到一張奇怪的字條 我們約會吧!3485djdkxh4hhge 2984akdfkkkkggedsb s hgsfdk d hyscvnm 大偵探很快就明白了,字條上奇怪的亂碼實際上就是約會的時間 星期四 14 04 因為前面兩字串中第1對相同的大寫英文本母 大小寫有區分 是...