ZeroJudge L960: 星期幾?

題目敘述

每筆輸入有一個字串,要求輸出這個字串是星期幾的英文。星期日為0、星期一為1,以此類推。如果字串拼字有誤,則輸出「error」。


範例輸入 #1

Sunday

範例輸出 #1

0


範例輸入 #2

Twosday

範例輸出 #2

error


解題思路

使用Map將每個日期的索引值存起來,如果讀到的字串在Map中沒有值的話就輸出error,反之則輸出Map的值。

解題程式碼如下 (僅供參考):

#include <iostream>
#include <map>
using namespace std;

int main() {
    map<string, int>MAP;
    MAP["Sunday"] = 1;
    MAP["Monday"] = 2;
    MAP["Tuesday"] = 3;
    MAP["Wednesday"] = 4;
    MAP["Thursday"] = 5;
    MAP["Friday"] = 6;
    MAP["Saturday"] = 7;
    string str;
    cin >> str;
    if (MAP[str] != 0) cout << MAP[str]-1 << endl;
    else cout << "error" << endl;
}



留言

這個網誌中的熱門文章

ZeroJudge M933: 邏輯電路

ZeroJudge A148: You Cannot Pass?!

ZeroJudge A263: 日期差幾天