[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์™ธ๋ฒฝ์ ๊ฒ€ :: ์žฌ๊ท€, ๋ฉ”๋ชจ์ด์ œ์ด์…˜, ์ฝ”๋“œ, ๊ฒฐ๊ณผ

์™ธ๋ฒฝ ์ ๊ฒ€

๋ฌธ์ œ

https://programmers.co.kr/learn/courses/30/lessons/60062#

๋ฌธ์ œ ์„ค๋ช…

๋ ˆ์Šคํ† ๋ž‘์„ ์šด์˜ํ•˜๊ณ  ์žˆ๋Š” ์Šค์นดํ”ผ๋Š” ๋ ˆ์Šคํ† ๋ž‘ ๋‚ด๋ถ€๊ฐ€ ๋„ˆ๋ฌด ๋‚ก์•„ ์นœ๊ตฌ๋“ค๊ณผ ํ•จ๊ป˜ ์ง์ ‘ ๋ฆฌ๋ชจ๋ธ๋ง ํ•˜๊ธฐ๋กœ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ ˆ์Šคํ† ๋ž‘์ด ์žˆ๋Š” ๊ณณ์€ ์Šค๋…ธ์šฐํƒ€์šด์œผ๋กœ ๋งค์šฐ ์ถ”์šด ์ง€์—ญ์ด์–ด์„œ ๋‚ด๋ถ€ ๊ณต์‚ฌ๋ฅผ ํ•˜๋Š” ๋„์ค‘์— ์ฃผ๊ธฐ์ ์œผ๋กœ ์™ธ๋ฒฝ์˜ ์ƒํƒœ๋ฅผ ์ ๊ฒ€ํ•ด์•ผ ํ•  ํ•„์š”๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ ˆ์Šคํ† ๋ž‘์˜ ๊ตฌ์กฐ๋Š” ์™„์ „ํžˆ ๋™๊ทธ๋ž€ ๋ชจ์–‘์ด๊ณ  ์™ธ๋ฒฝ์˜ ์ด ๋‘˜๋ ˆ๋Š” n๋ฏธํ„ฐ์ด๋ฉฐ, ์™ธ๋ฒฝ์˜ ๋ช‡๋ช‡ ์ง€์ ์€ ์ถ”์œ„๊ฐ€ ์‹ฌํ•  ๊ฒฝ์šฐ ์†์ƒ๋  ์ˆ˜๋„ ์žˆ๋Š” ์ทจ์•ฝํ•œ ์ง€์ ๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋‚ด๋ถ€ ๊ณต์‚ฌ ๋„์ค‘์—๋„ ์™ธ๋ฒฝ์˜ ์ทจ์•ฝ ์ง€์ ๋“ค์ด ์†์ƒ๋˜์ง€ ์•Š์•˜๋Š” ์ง€, ์ฃผ๊ธฐ์ ์œผ๋กœ ์นœ๊ตฌ๋“ค์„ ๋ณด๋‚ด์„œ ์ ๊ฒ€์„ ํ•˜๊ธฐ๋กœ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋งŒ, ๋น ๋ฅธ ๊ณต์‚ฌ ์ง„ํ–‰์„ ์œ„ํ•ด ์ ๊ฒ€ ์‹œ๊ฐ„์„ 1์‹œ๊ฐ„์œผ๋กœ ์ œํ•œํ–ˆ์Šต๋‹ˆ๋‹ค. ์นœ๊ตฌ๋“ค์ด 1์‹œ๊ฐ„ ๋™์•ˆ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฑฐ๋ฆฌ๋Š” ์ œ๊ฐ๊ฐ์ด๊ธฐ ๋•Œ๋ฌธ์—, ์ตœ์†Œํ•œ์˜ ์นœ๊ตฌ๋“ค์„ ํˆฌ์ž…ํ•ด ์ทจ์•ฝ ์ง€์ ์„ ์ ๊ฒ€ํ•˜๊ณ  ๋‚˜๋จธ์ง€ ์นœ๊ตฌ๋“ค์€ ๋‚ด๋ถ€ ๊ณต์‚ฌ๋ฅผ ๋•๋„๋ก ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ํŽธ์˜ ์ƒ ๋ ˆ์Šคํ† ๋ž‘์˜ ์ •๋ถ ๋ฐฉํ–ฅ ์ง€์ ์„ 0์œผ๋กœ ๋‚˜ํƒ€๋‚ด๋ฉฐ, ์ทจ์•ฝ ์ง€์ ์˜ ์œ„์น˜๋Š” ์ •๋ถ ๋ฐฉํ–ฅ ์ง€์ ์œผ๋กœ๋ถ€ํ„ฐ ์‹œ๊ณ„ ๋ฐฉํ–ฅ์œผ๋กœ ๋–จ์–ด์ง„ ๊ฑฐ๋ฆฌ๋กœ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๋˜, ์นœ๊ตฌ๋“ค์€ ์ถœ๋ฐœ ์ง€์ ๋ถ€ํ„ฐ ์‹œ๊ณ„, ํ˜น์€ ๋ฐ˜์‹œ๊ณ„ ๋ฐฉํ–ฅ์œผ๋กœ ์™ธ๋ฒฝ์„ ๋”ฐ๋ผ์„œ๋งŒ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

์™ธ๋ฒฝ์˜ ๊ธธ์ด n, ์ทจ์•ฝ ์ง€์ ์˜ ์œ„์น˜๊ฐ€ ๋‹ด๊ธด ๋ฐฐ์—ด weak, ๊ฐ ์นœ๊ตฌ๊ฐ€ 1์‹œ๊ฐ„ ๋™์•ˆ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฑฐ๋ฆฌ๊ฐ€ ๋‹ด๊ธด ๋ฐฐ์—ด dist๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, ์ทจ์•ฝ ์ง€์ ์„ ์ ๊ฒ€ํ•˜๊ธฐ ์œ„ํ•ด ๋ณด๋‚ด์•ผ ํ•˜๋Š” ์นœ๊ตฌ ์ˆ˜์˜ ์ตœ์†Œ๊ฐ’์„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.

์ œํ•œ์‚ฌํ•ญ

  • n์€ 1 ์ด์ƒ 200 ์ดํ•˜์ธ ์ž์—ฐ์ˆ˜์ž…๋‹ˆ๋‹ค.
  • weak์˜ ๊ธธ์ด๋Š” 1 ์ด์ƒ 15 ์ดํ•˜์ž…๋‹ˆ๋‹ค.
    • ์„œ๋กœ ๋‹ค๋ฅธ ๋‘ ์ทจ์•ฝ์ ์˜ ์œ„์น˜๊ฐ€ ๊ฐ™์€ ๊ฒฝ์šฐ๋Š” ์ฃผ์–ด์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
    • ์ทจ์•ฝ ์ง€์ ์˜ ์œ„์น˜๋Š” ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ๋˜์–ด ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค.
    • weak์˜ ์›์†Œ๋Š” 0 ์ด์ƒ n - 1 ์ดํ•˜์ธ ์ •์ˆ˜์ž…๋‹ˆ๋‹ค.
  • dist์˜ ๊ธธ์ด๋Š” 1 ์ด์ƒ 8 ์ดํ•˜์ž…๋‹ˆ๋‹ค.
    • dist์˜ ์›์†Œ๋Š” 1 ์ด์ƒ 100 ์ดํ•˜์ธ ์ž์—ฐ์ˆ˜์ž…๋‹ˆ๋‹ค.
  • ์นœ๊ตฌ๋“ค์„ ๋ชจ๋‘ ํˆฌ์ž…ํ•ด๋„ ์ทจ์•ฝ ์ง€์ ์„ ์ „๋ถ€ ์ ๊ฒ€ํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ์—๋Š” -1์„ return ํ•ด์ฃผ์„ธ์š”.

์ž…์ถœ๋ ฅ ์˜ˆ

n weak dist result
12 [1, 5, 6, 10] [1, 2, 3, 4] 2
12 [1, 3, 4, 9, 10] [3, 5, 7] 1

์ž…์ถœ๋ ฅ ์˜ˆ์— ๋Œ€ํ•œ ์„ค๋ช…

์ž…์ถœ๋ ฅ ์˜ˆ #1

์›ํ˜• ๋ ˆ์Šคํ† ๋ž‘์—์„œ ์™ธ๋ฒฝ์˜ ์ทจ์•ฝ ์ง€์ ์˜ ์œ„์น˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

แ„‹แ…ฌแ„‡แ…งแ†จแ„Œแ…ฅแ†ทแ„€แ…ฅแ†ท-1.jpg

์นœ๊ตฌ๋“ค์„ ํˆฌ์ž…ํ•˜๋Š” ์˜ˆ์‹œ ์ค‘ ํ•˜๋‚˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • 4m๋ฅผ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ์นœ๊ตฌ๋Š” 10m ์ง€์ ์—์„œ ์ถœ๋ฐœํ•ด ์‹œ๊ณ„๋ฐฉํ–ฅ์œผ๋กœ ๋Œ์•„ 1m ์œ„์น˜์— ์žˆ๋Š” ์ทจ์•ฝ ์ง€์ ์—์„œ ์™ธ๋ฒฝ ์ ๊ฒ€์„ ๋งˆ์นฉ๋‹ˆ๋‹ค.
  • 2m๋ฅผ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ์นœ๊ตฌ๋Š” 4.5m ์ง€์ ์—์„œ ์ถœ๋ฐœํ•ด 6.5m ์ง€์ ์—์„œ ์™ธ๋ฒฝ ์ ๊ฒ€์„ ๋งˆ์นฉ๋‹ˆ๋‹ค.

๊ทธ ์™ธ์— ์—ฌ๋Ÿฌ ๋ฐฉ๋ฒ•๋“ค์ด ์žˆ์ง€๋งŒ, ๋‘ ๋ช…๋ณด๋‹ค ์ ์€ ์นœ๊ตฌ๋ฅผ ํˆฌ์ž…ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์—†์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์นœ๊ตฌ๋ฅผ ์ตœ์†Œ ๋‘ ๋ช… ํˆฌ์ž…ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ #2

์›ํ˜• ๋ ˆ์Šคํ† ๋ž‘์—์„œ ์™ธ๋ฒฝ์˜ ์ทจ์•ฝ ์ง€์ ์˜ ์œ„์น˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

แ„‹แ…ฌแ„‡แ…งแ†จแ„Œแ…ฅแ†ทแ„€แ…ฅแ†ท-2.jpg

7m๋ฅผ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ์นœ๊ตฌ๊ฐ€ 4m ์ง€์ ์—์„œ ์ถœ๋ฐœํ•ด ๋ฐ˜์‹œ๊ณ„ ๋ฐฉํ–ฅ์œผ๋กœ ์ ๊ฒ€์„ ๋Œ๋ฉด ๋ชจ๋“  ์ทจ์•ฝ ์ง€์ ์„ ์ ๊ฒ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์นœ๊ตฌ๋ฅผ ์ตœ์†Œ ํ•œ ๋ช… ํˆฌ์ž…ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.


์ฝ”๋“œ

#include <string>
#include <vector>
#include <algorithm>
#include <map>

using namespace std;

unordered_map<string, int> memo;

string makeKeyString(vector<int>& weak, vector<int>& dist){
    // ๋ฉ”๋ชจ์ด์ œ์ด์…˜์„ ์œ„ํ•œ key ์ƒ์„ฑ ํ•จ์ˆ˜
    string s;
    for(int i=0; i<weak.size(); i++){
        s += to_string(weak[i]);
        s += "/"; // ๊ตฌ๋ถ„์ž
    }
    s+=":"; // ๊ตฌ๋ถ„์ž
    for(int i=0; i<dist.size(); i++){
        s += to_string(dist[i]);
        s += "/"; // ๊ตฌ๋ถ„์ž
    }
    return s;
}

int memoReturn(string s){
    // ๋ฉ”๋ชจ์ด์ œ์ด์…˜ ๊ฒฐ๊ณผ return
    if(memo.find(s)!=memo.end())
        return memo[s];
    else
        return -1;
}

int module(int n, vector<int>& weak, vector<int> dist) {
    // ํ˜„์žฌ weak์™€ dist์—์„œ ์ตœ์†Œ๋กœ ์ˆ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์ธ์›์ˆ˜๋ฅผ return ํ•˜๋Š” ํ•จ์ˆ˜

    if (weak.size() == 0) // weak๊ฐ€ ๋”์ด์ƒ ์—†์œผ๋ฉด 0
        return 0;
    if (dist.size() == 0) // weak๊ฐ€ ์žˆ๋Š”๋ฐ dist๊ฐ€ ์—†์œผ๋ฉด ๋ถˆ๊ฐ€๋Šฅ (์ตœ๋Œ€๊ฐ’ return)
        return 1e9;
    if (weak.size() == 1) // dist๊ฐ€ ์žˆ๋Š”๋ฐ weak๊ฐ€ 1๊ฐœ ๋‚จ์•˜์œผ๋ฉด ๋ฐ”๋กœ ํ•ด๊ฒฐ ๊ฐ€๋Šฅ
        return 1;

    int biggest = dist[dist.size() - 1]; // ๊ฐ€์žฅ ํฐ dist๋ฅผ ๋ฐ›์•„์˜ด
    dist.pop_back();
    int mod = n;
    int min = 1e8; // 1 ๋”ํ•ด์ฃผ๋Š” ๊ฒƒ ๋•Œ๋ฌธ์— 1e9๋กœ ์ฒ˜๋ฆฌํ•˜๋ฉด overflow => ใ… ใ… 

    for (int i = 0; i<weak.size(); i++) {
        int start = weak[i];
        int end = weak[i] + biggest; end %= mod; // end๊ฐ€ n๋ณด๋‹ค ์ปค์ง€๋Š” ๊ฒƒ ๋ฐฉ์ง€

        vector<int> tmpWeak(weak);
        bool over = false;
        if (start > end) {
            over = true;
        }
        for (int i = tmpWeak.size()-1; i >= 0; i--) { // ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๋ฒ”์œ„ ๋‚ด์˜ weak ์—†์• ๊ธฐ
            if (over) {
                if (start <= tmpWeak[i] || end >= tmpWeak[i])
                    tmpWeak.erase(tmpWeak.begin() + i);
            }
            else {
                if (start <= tmpWeak[i] && end >= tmpWeak[i])
                    tmpWeak.erase(tmpWeak.begin() + i);
            }
        }

        int tmp;
        string s_tmp = makeKeyString(tmpWeak, dist); // ํ‚ค ์ƒ์„ฑ
        int tmpMemo = memoReturn(s_tmp); // memo์— ์žˆ๋Š”์ง€ ํ™•์ธ
        if(tmpMemo!=-1)
            tmp = tmpMemo; // ์žˆ์œผ๋ฉด ์‚ฌ์šฉ
        else{
            tmp = module(n, tmpWeak, dist);
            memo[s_tmp] = tmp; // ์—†์œผ๋ฉด ๊ณ„์‚ฐ ํ›„ memo์— ์ €์žฅ
        }
        if (min>tmp)
            min = tmp;
    }
    return min+1; // ์ฒ˜์Œ dist ์‚ฌ์šฉํ•œ ๊ฒƒ ๊ณ ๋ คํ•ด์„œ 1 ๋”ํ•ด์ฃผ๊ธฐ
}

int solution(int n, vector<int> weak, vector<int> dist) {
    sort(dist.begin(), dist.end());
    int answer = module(n, weak, dist);

    if(answer>=1e8) // ๋งŒ์•ฝ ๋ถˆ๊ฐ€๋Šฅํ•˜๋ฉด
        answer = -1;

    return answer;
}

ํ’€์ด

์ฒ˜์Œ์— input ๊ฐ’์ด ์ ์€ ๊ฑธ ์ƒ๊ฐํ•˜์ง€ ๋ชปํ•˜๊ณ , ์กฐ๊ฑด์— ๋งž์ถฐ ํ’€๋‹ค๊ฐ€ ๋œํ†ต ๋‹นํ–ˆ๋‹ค ใ…Žใ…Žใ…Ž input ๊ฐ’์ด ์ ๊ณ  ์กฐ๊ฑด์ด ๋„ˆ๋ฌด ๋งŽ์•„์„œ ๊ณ ๋ คํ•˜๊ธฐ ํž˜๋“ค๋ฉด ์™„์ „ํƒ์ƒ‰ + ์†๋„๊ฐœ์„ ๋ฐฉ๋ฒ•(DP, ๋ฉ”๋ชจ์ด์ œ์ด์…˜, ์žฌ๊ท€ ์กฐ๊ฑด)๋ฅผ ์ƒ๊ฐํ•ด๋ณด์ž.

์žฌ๊ท€๋ฅผ ์ด์šฉํ•˜์—ฌ, ํ˜„์žฌ dist๋กœ๋ถ€ํ„ฐ weak๋ฅผ ์ œ๊ฑฐํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ์ตœ์†Œ ์ธ์›์ˆ˜๋ฅผ return ํ•˜๋Š” ์‹์œผ๋กœ ๋™์ž‘์‹œํ‚ค๋ฉด ๋œ๋‹ค.

  1. ์™„์ „ ํƒ์ƒ‰์œผ๋กœ dist๋ฅผ ์ตœ๋Œ€ ๊ฐ’๋ถ€ํ„ฐ ์‚ฌ์šฉํ•œ๋‹ค.
  2. ํ•ด๋‹น dist๋กœ ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๋ฒ”์œ„๋ฅผ ๊ฐ weak ์ง€์ ์— ๋Œ€ํ•ด์„œ ์‚ดํŽด๋ณธ๋‹ค.
  3. ํ•ด๋‹น ๋ฒ”์œ„์— ์žˆ๋Š” weak ์ง€์ ๋“ค์„ ์ œ๊ฑฐํ•œ๋‹ค.
  4. ๋‚จ์€ weak์™€ dist๋ฅผ ์žฌ๊ท€๋กœ ๋„˜๊ฒจ 1๋ฒˆ๋ถ€ํ„ฐ ๋‹ค์‹œ ์ ์šฉํ•œ๋‹ค.

์ด๋ ‡๊ฒŒ ์žฌ๊ท€ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ผ๊ฐ€๋ดค์„ ๋•Œ, ๋‹ค์Œ ๋‹จ๊ณ„๋กœ ๊ฐ€๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋Š” ๊ฐˆ ์ˆ˜ ์žˆ๋Š” weak์˜ ์ˆ˜์ด๋‹ค. ๋ฐฉํ–ฅ์€ ์‹œ๊ณ„, ๋ฐ˜์‹œ๊ณ„ ๋ฐฉํ–ฅ์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ํ•œ ๋ฐฉํ–ฅ์œผ๋กœ ๊ณ ์ •ํ•˜๋ฉด ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ฒดํฌํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์‹œ๊ณ„๋ฐฉํ–ฅ์œผ๋กœ ๊ณ ์ •ํ•œ๋‹ค. weak์˜ ์ˆ˜๋Š” ์ž…๋ ฅ๊ฐ’์—์„œ ์ฃผ์–ด์กŒ๋“ฏ ์ตœ๋Œ€ 15์ด๋ฏ€๋กœ ํ•œ ๋‹จ๊ณ„์—์„œ ๋ป—์–ด๋‚˜์˜ค๋Š” ๊ฐ€์ง€์˜ ์ˆ˜๋Š” ์ตœ๋Œ€ 15๊ฐœ์ด๋‹ค.

๋”ํ•ด์„œ weak๊ฐ€ ํ•œ ๋‹จ๊ณ„์— ์ตœ์†Œ ํ•˜๋‚˜์”ฉ ์‚ฌ๋ผ์ง„๋‹ค๊ณ  ์ตœ์•…์œผ๋กœ ๊ฐ€์ •ํ•˜๋ฉด ์ตœ๋Œ€ 15 ๊นŠ์ด๊ฐ€ ๋‚˜์˜ค๋ฏ€๋กœ, 15^15๋ผ๋Š” ์‹œ๊ฐ„๋ณต์žก๋„๊ฐ€ ๋‚˜์˜จ๋‹ค.

์ด๋Š” ๋„ˆ๋ฌด ํฐ ์‹œ๊ฐ„๋ณต์žก๋„ ์ด๋ฏ€๋กœ ์žฌ๊ท€์—์„œ ๊ฒน์น˜๋Š” ๋ถ€๋ถ„์„ ์ค„์ด๋Š” ๋ฐฉ์‹์œผ๋กœ ์‹œ๊ฐ„๋ณต์žก๋„๋ฅผ ๋‚ฎ์ถฐ์•ผํ•˜๋Š”๋ฐ, '๋ฉ”๋ชจ์ด์ œ์ด์…˜'์„ ์‚ฌ์šฉํ•˜์˜€๋‹ค. ํ•ด๋‹น ๋ฌธ์ œ์—์„œ ๊ฒน์น˜๋Š” ๋ถ€๋ถ„์„ ํŒ๋‹จํ•˜๋Š” ๊ธฐ์ค€์€ dist์™€ weak์ด๋‹ค.

dist์™€ weak๊ฐ€ ๊ฐ™์€ module function์€ ๋ฐ˜๋ณตํ•  ํ•„์š”์—†์ด ์ด์ „ ๊ฐ’๊ณผ ๋™์ผํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋‚ด๋ฏ€๋กœ dist์™€ weak๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฉ”๋ชจ์ด์ œ์ด์…˜์„ ์ฒ˜๋ฆฌํ•˜๋ฉด ๋œ๋‹ค.

๋‘˜ ๋‹ค vector<int>์˜ ๊ตฌ์กฐ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ฉ”๋ชจ์ด์ œ์ด์…˜์— ์šฉ์ดํ•˜๋„๋ก ๊ตฌ๋ถ„์ž๋ฅผ ์ด์šฉํ•˜์—ฌ string์œผ๋กœ ๋งŒ๋“ค์–ด์ค€ ํ›„์— map์œผ๋กœ ๋ฉ”๋ชจ์ด์ œ์ด์…˜์„ ๊ตฌํ˜„ํ•ด์ฃผ์—ˆ๋‹ค.

์ฑ„์ ๊ฒฐ๊ณผ

๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ํ’€์ด

  • ์ˆœ์—ด์„ ์ด์šฉํ•ด์„œ ํ‘ธ๋Š” ๊ฒƒ์ด ๋” ๋น ๋ฅด๋‹ค.
๋ฐ˜์‘ํ˜•