๊ธฐ๋ก๋ฐฉ

Lv.1 : ๋‘˜๋งŒ์˜ ์•”ํ˜ธ ๋ณธ๋ฌธ

CodingTest/Java

Lv.1 : ๋‘˜๋งŒ์˜ ์•”ํ˜ธ

Soom_1n 2023. 4. 20. 17:59

๐Ÿ‘‰ ๋ฌธ์ œ๋งํฌ

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr



๐Ÿ”ธ ๋ฌธ์ œ ๋ถ„์„ ๐Ÿ”ธ

  • ๋ฌธ์ž์—ด s์˜ ๊ฐ ์ž๋ฆฌ ๋ฌธ์ž๋“ค์„ index๋งŒํผ ๋’ค ์•ŒํŒŒ๋ฒณ์œผ๋กœ ๋ฐ”๊พผ๋‹ค.
    • z๊ฐ€ ๋„˜์œผ๋ฉด ๋‹ค์‹œ a๋ถ€ํ„ฐ ๋ฏธ๋ฃฌ๋‹ค.
    • skip์— ํฌํ•จ ๋œ ๋ฌธ์ž๋Š” ์„ธ์ง€ ์•Š๋Š”๋‹ค.
  • ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค

๐Ÿ”ธ ์ฝ”๋“œ ๐Ÿ”ธ

class Solution {
    public String solution(String s, String skip, int index) {
        String answer = "";
        
        for(int i = 0; i < s.length(); i++) {
            int now = s.charAt(i) - 'a';
            for(int j = 0; j < index; j++) {
                now = (now+1)%26;
                if(skip.indexOf((char)(now+'a')) > -1)
                    j--;
            }
            answer += (char)(now+'a');
        }
        return answer;
    }
}

๐Ÿ”ธ ์ฝ”๋“œ ํ•ด์„ ๐Ÿ”ธ

  • s์˜ ๋ฌธ์ž ํ•˜๋‚˜์”ฉ ๊ณ„์‚ฐํ•ด answer์— ๋”ํ•œ๋‹ค.
    • ๋ฌธ์ž๋ฅผ index๋งŒํผ ๋’ค๋กœ ๋ฏธ๋ฃจ๋Š”๋ฐ, skip์— ํฌํ•จ ๋˜์–ด ์žˆ์œผ๋ฉด ์นด์šดํŠธ๋ฅผ ์„ธ์ง€ ์•Š๋Š”๋‹ค.

๐Ÿ”ธ end ๐Ÿ”ธ

  • ๋ฌธ์ž๋ฅผ intํ˜•์œผ๋กœ ๊ณ„์‚ฐํ–ˆ๋Š”๋ฐ, ๋‹ค์‹œ ๋ฌธ์ž์—ด๋กœ ๋ฐ”๊ฟ€ ๋•Œ String.valueOf() ์“ฐ๋Š”๊ฒŒ ์ข‹์•˜์„ ๊ฒƒ ๊ฐ™๋‹ค.
  • ๋ฌธ์ž์—ด์— ํฌํ•จ๋๋Š”์ง€๋Š” indexOf ๋ฅผ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ, contains๋ฅผ ์จ์„œ ๋ฌธ์ž์—ด ๋ผ๋ฆฌ ๊ฒ€์ƒ‰๋„ ๊ฐ€๋Šฅํ•˜๋‹ค.

728x90

'CodingTest > Java' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

Lv.1 : ๋‹ฌ๋ฆฌ๊ธฐ ๊ฒฝ์ฃผ  (0) 2023.04.25
BOJ_2252 : ์ค„ ์„ธ์šฐ๊ธฐ  (0) 2023.04.22
BOJ_2110 : ๊ณต์œ ๊ธฐ ์„ค์น˜  (0) 2023.04.18
BOJ_1806 : ๋ถ€๋ถ„ํ•ฉ  (0) 2023.04.18
BOJ_2589 : ๋ณด๋ฌผ์„ฌ  (0) 2023.04.18