#32176: 請問問題出在哪


noahyyds1995@gmail.com (krisarchie)

學校 : 臺北市立第一女子高級中學
編號 : 203692
來源 : [1.164.6.207]
最後登入時間 :
2023-01-07 00:57:50
b515. 摩斯電碼-商競103 -- 103學年度商業類程式設計競賽模擬題 | From: [118.165.134.214] | 發表日期 : 2022-09-18 20:15

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

int main()
{
    map<string, char> m = {
        {".-", 'A'}, {"-...", 'B'}, {"-.-.", 'C'}, {"-..", 'D'},
        {".", 'E'}, {"..-.", 'F'}, {"--.", 'G'}, {"....", 'H'},
        {"..", 'I'}, {".---", 'J'}, {"-.-", 'K'}, {".-..", 'L'},
        {"--", 'M'}, {"-.", 'N'}, {"---", 'O'}, {".--.", 'P'},
        {"--.-", 'Q'}, {".-.", 'R'}, {"...", 'S'}, {"-", 'T'},
        {"..-", 'U'}, {"...-", 'V'}, {".--", 'W'}, {"-..-", 'X'},
        {"-.--", 'Y'}, {"--..", 'Z'},
    };
    string s, y;
    long i = 0, j = 0, n,jj[12];
    cin >> n;
    string c[n][12];
    for(i = 0; i < n; i++){
        getline(cin, s);
        stringstream x(s);
        while(getline(x, y, ' ')){
            c[i][j] = y;
            j++;
        }
        jj[i] = j;
        j = 0;
        i++;
    }

    for(i = 0; i < n; i++){
        for(j = 0; j < jj[i] + 1; j++){
            cout << m[c[i][j]];
        }
        cout << '\n';
    }

    return 0;
}

 
ZeroJudge Forum