Publish:

ํƒœ๊ทธ: , , , , ,

์นดํ…Œ๊ณ ๋ฆฌ:

img_3.png

๋ฌธ์ œ

๋ฌธ์ œ ๋งํฌ

img_3.png img_4.png

์„ค๋ช…

ํ‚คํŒจ๋“œ ๋ฐฐ์—ด์ด keymap ์œผ๋กœ ์ฃผ์–ด์ง€๊ณ , ์ž…๋ ฅํ•˜๊ณ ์ž ํ•˜๋Š” ๊ฐ’์ด targets ๋ฐฐ์—ด๋กœ ์ฃผ์–ด์งˆ ๋•Œ targets ์— ๋“ค์–ด์žˆ๋Š” ๋‹จ์–ด๋ฅผ ์™„์„ฑํ•˜๊ธฐ ์œ„ํ•ด ํ‚คํŒจ๋“œ๋ฅผ ์ด ๋ช‡๋ฒˆ์”ฉ ๋ˆŒ๋Ÿฌ์•ผ ํ•˜๋Š”์ง€ ๊ฐ๊ฐ ๋ˆ„์  ํšŸ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฌธ์ œ

ํ’€์ด

ํ‚คํŒจ๋“œ๋ฅผ ์ตœ์†Œ๋กœ ๋ˆŒ๋Ÿฌ์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ฃผ์–ด์ง„ keymap ์ „์ฒด์—์„œ ์ค‘๋ณต๋˜๋Š” ๋ฌธ์ž๋Š” ์ธ๋ฑ์Šค ๋ฒˆํ˜ธ๊ฐ€ ๋” ์ž‘์€ ํ‚คํŒจ๋“œ๋ฅผ ๋ˆŒ๋Ÿฌ์•ผ ํ•œ๋‹ค.

1
2
keymap = ["ABACD", "BCEFD"]
targets = ["ABCD"]

์˜ˆ๋ฅผ ๋“ค์–ด keymap ๊ณผ targets ๋ฐฐ์—ด์ด ์œ„์™€ ๊ฐ™์„๋•Œ A ๊ฐ€ ํ‚คํŒจ๋“œ ํ•˜๋‚˜์— ๋‘๊ฐœ ๋“ค์–ด์žˆ์ง€๋งŒ ์ฒ˜์Œ ํ•œ๋ฒˆ๋งŒ ๋ˆ„๋ฅด๋ฉด ๋œ๋‹ค. ๊ฐ ํ‚คํŒจ๋“œ์˜ ์ˆœ์„œ๋ฅผ ์ €์žฅํ•  map ์„ ๋งŒ๋“ค์–ด ๋‘๊ณ , keymap ์˜ ๋ชจ๋“  ํ•ญ๋ชฉ์„ ์ˆœํšŒํ•˜๋ฉด์„œ ์ค‘๋ณต ๋ฌธ์ž์— ๋Œ€ํ•ด์„  ์ˆœ์„œ๊ฐ€ ๋” ์ž‘์€ ๊ฐ’์œผ๋กœ ๊ฐฑ์‹ ์‹œ์ผœ ์ค€๋‹ค.

์ด๋•Œ ์ˆœ์„œ๋Š” 1๋ถ€ํ„ฐ ์ €์žฅํ•œ๋‹ค. ์ด์ œ ๋ฌธ์ž ๋ณ„ ๋ˆŒ๋Ÿฌ์•ผ ํ•˜๋Š” ์ตœ์†Œ ํšŸ์ˆ˜๊ฐ€ map ์— ๋ชจ๋‘ ๋“ค์–ด์žˆ๊ฒŒ ๋œ๋‹ค. map ์—์„œ target ์— ์žˆ๋Š” ๋ฌธ์ž๋ฅผ ์ฐพ์•„์„œ ์นด์šดํŠธ๋งŒ ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
class Solution {
    public int[] solution(String[] keymap, String[] targets) {
        int[] answer = new int[targets.length];
        HashMap<Character, Integer> map = new HashMap<>();
        for (String s : keymap) {
          char[] charArray = s.toCharArray();
          for (int j = 0; j < charArray.length; j++) {
            char c = charArray[j];
            if (map.get(c) == null || map.get(c) > j) {
              map.put(c, j + 1);
            }
          }
        }

        for (int i = 0; i < targets.length; i++) {
          char[] charArray = targets[i].toCharArray();
          for (int j = 0; j < charArray.length; j++) {
            char c = charArray[j];
            if (map.containsKey(c)) {
              answer[i] += map.get(c);
            } else {
              answer[i] = -1;
              break;
            }
          }
        }
        return answer;
    }
}

img_3.png

๋ฐฉ๋ฌธํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ๋Œ“๊ธ€,์ง€์ ,ํ”ผ๋“œ๋ฐฑ ์–ธ์ œ๋‚˜ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค๐Ÿ˜Š

๐Ÿ˜€

๋Œ“๊ธ€๋‚จ๊ธฐ๊ธฐ