日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

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

發布時間:2024/7/5 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PAT乙类1014 福尔摩斯的约会 (20 分) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、題目

大偵探福爾摩斯接到一張奇怪的字條:我們約會吧! 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

二、代碼

測試點分析

  • 確當周幾的字母是A–G,所以遍歷字符串的時候,第一個和第二個字符串的相同位置字母不僅一樣,還要是A~G內的
  • 先確定小時,之后才會考慮小時和分鐘!!而且是在滿足1條件的字母的位置后面查找,前面根本不在乎!!即不執行!用flag來判斷(因為兩個字符串第一個相同的字符是8,但題目的陳述的是E,這是隱含信息)
  • 兩個字符串中相同位置具有相同字母的對數不止兩對,所以在確定小時之后一定要跳出循環,(0-9和A-N是相互矛盾的,誰先相同,用誰)不然后面還可能又有一對滿足2的,這就錯誤了,有一個測試點的陷阱就在這里。
  • 最后兩個字符串中只要是字母就行,不分大小寫在字符串的相對位置(從零開始計數)。
  • 小時或者分鐘不滿足兩位的要記得補零。
  • 新函數
  • switch的替換 -----string類型
    week字符串的使用感覺不錯哦!!可以不用switch了,get到新技能
  • string week[7] = {“MON”, “TUE”, “WED”, “THU”, “FRI”, “SAT”, “SUN”};

  • 輸出01、02、03…補零
  • printf("%02d", j); //c語言,不建議用cout

  • 判斷大寫字母、小寫字母、數字的方法
  • str[0][j] >= ‘A’ && str[0][j] <= ‘G’
    str[0][j] >= ‘0’ &&str[0][j] <= ‘9’
    str[2][j] >= ‘a’ && str[2][j] <= ‘z’

  • flag的使用
    它的使用,可以選擇性的執行代碼!!!如果多種執行塊時!!

  • 輸出大寫字母的位置。比如E,是第5個。

  • ‘E’ - ‘A’ + 1

    分析

    1) 這個題目確實看起來有點復雜,但是它整個的思維是:
    同時遍歷兩個字符串相同位置
    1.字符相等,而且字符必須是大寫字母,且必須在’A’ ~ ‘G’ 之間。(星期幾)
    2.字符相等,而且字符必須在’A’ ~ ‘N’ 或 ‘0’ ~ '9’之間 (小時)
    3.字符相等, 而且必須是字母。(分鐘)

    #include <iostream> #include <string.h> #include <stdio.h> using namespace std;int main() {char str[4][61] = {" "};int i, j; string week[7] = {"MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"};int flag = 0;int hour;for(i=0; i<4; i++) {cin>>str[i];}for(j=0; j<61; j++) {if(str[0][j] == str[1][j]) {if(flag == 0) {if(str[0][j] >= 'A' && str[0][j] <= 'G') {cout<<week[str[0][j] - 'A']<<" ";flag = 1;}}else {if(str[0][j] >= 'A' && str[0][j] <= 'N') {hour = str[0][j] - 'A' + 10;break; //及時退出, 這兩個是矛盾的 }else if(str[0][j] >= '0' && str[0][j] <= '9') {hour = str[0][j] - '0';break; //及時退出,這兩個是矛盾的 }}}}printf("%02d:", hour); //hour也必須是02d形式!!!! for(j=0, i=0; j<61; j++) {if((str[2][j] >= 'a' && str[2][j] <= 'z') || (str[2][j] >= 'A' && str[2][j] <= 'Z')) {if(str[2][j] == str[3][j]) {printf("%02d", j);break;}}} return 0; }

    下面的只是我第一次的表示方法,有點繞,自己就是記錄一下!!!!可以不看

    #include <iostream> #include <string.h> #include <stdio.h> using namespace std;int main() {char str[4][61] = {" "}; //四個字符串。int i, j; char c1, c2, c3, c4; //用來保存臨時字符。 string wens[7] = {"MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"};int flag = 0; //用來判斷星期是不是已經輸出!! int hour; //小時for(i=0; i<4; i++) {cin>>str[i];}for(j=0; j<61; j++) {if(str[0][j] >= 'A' && str[0][j] <= 'N') { //不是任意一個字母就行的!!必須是在范圍之內的 c3 = str[0][j];if(flag == 1 && c3 == str[1][j]) {hour = c3 - 'A' + 10;flag = 2;break;}}else if(str[0][j] >= '0' && str[0][j] <= '9') {c2 = str[0][j];if(str[1][j] == c2 && flag == 1) { //是第一個字母相同后面找再相同的!! hour = c2 - '0';break;}}if(str[0][j] >= 'A' && str[0][j] <= 'G') { //不是任意一個字母相同就行的 c1 = str[0][j];if(str[1][j] == c1){if(flag == 0) {cout<<wens[c1 - 'A']<<" ";flag = 1;}}}}printf("%02d:", hour); //hour也必須是02d形式!!!! for(j=0, i=0; j<61; j++) {if((str[2][j] >= 'a' && str[2][j] <= 'z') || (str[2][j] >= 'A' && str[2][j] <= 'Z')) {c4 = str[2][j]; //最后一個條件只要是相同的字母就行,不區分大小寫 if(c4 == str[3][j]) {printf("%02d", j);break;}}} return 0; }

    總結

    以上是生活随笔為你收集整理的PAT乙类1014 福尔摩斯的约会 (20 分)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 国产a级一级片 | 久久国产这里只有精品 | 中文免费在线观看 | 成都电影免费大全 | 日韩一区二区三区精品 | 国产做爰xxxⅹ性视频国 | 国模无码视频一区 | 国产亚洲精品久久久久久打不开 | 向着小小的花蕾绽放 | 爱情岛亚洲首页论坛 | 欧美日韩v | 国产熟女高潮视频 | 成人av网站在线播放 | 国产女上位 | 综合五月婷 | av在线免| yy6080午夜 | 亚洲色图28p| 国产亚洲精品久 | 高清国产午夜精品久久久久久 | 特黄做受又粗又大又硬老头 | 性欧美丰满熟妇xxxx性仙踪林 | 丝袜操 | 色多多网站 | 精品少妇人妻av一区二区三区 | 国产 日韩 欧美 精品 | 色播五月激情五月 | 91视频在| 日本黄色性视频 | 91av国产在线 | 性感美女av在线 | 久久男女视频 | 天堂在线亚洲 | 国产麻豆91| 深爱激情久久 | 欧美乱仑 | 蜜桃又黄又粗又爽av免 | 狠狠爱综合网 | 绯色av一区二区 | 什么网站可以看毛片 | 欧美日韩国产一区二区在线观看 | 极品美女一区二区三区 | 国模在线观看 | jizz欧美| 欧美激情欧美激情在线五月 | 亚洲天堂网站 | 免费播放av| 亚洲永久无码精品一区二区 | 狠狠撸狠狠操 | 欧美日韩免费高清一区色橹橹 | 国产乱码精品一区二区三区不卡 | 女生高潮视频在线观看 | 国产伦一区二区 | 蜜桃成人在线 | 亚洲男人天堂 | 久久久96人妻无码精品 | 亚洲人妻一区二区 | 亚洲欧美激情精品一区二区 | 怒海潜沙秦岭神树 | 毛片网 | 96视频在线 | 制服丝袜在线第一页 | 国产美女一区二区三区 | 日韩少妇一区二区三区 | 五月天堂婷婷 | 中文字幕区| 亚洲一区二区三区香蕉 | 欧美日本免费 | 国产精品国产自产拍高清av | 一区二区自拍偷拍 | 亚洲国产一区二区在线 | 国产精品亚州 | 国产又大又长又粗 | 欧美激情精品久久久久 | 俺去草 | www.av在线.com | 青草av在线 | 国产图区| 强公把我次次高潮hd | 久久久噜噜噜www成人网 | 欧美激情动态图 | 秋霞黄色网 | 成人午夜激情网 | 国产精品自拍第一页 | 狠狠操伊人 | 自拍欧美亚洲 | 日本黄色一级视频 | 久久精品国产亚洲av无码娇色 | 91麻豆精品国产91久久久更新时间 | 春色激情 | 成人免费av片 | 午夜伦视频 | 免费啪视频 | 久久精品美女 | 丰满少妇一级片 | 瑟瑟在线观看 | 真实人妻互换毛片视频 | 色偷偷影院 | 国产精品美女久久久久av爽 |