์•Œ๊ณ ๋ฆฌ์ฆ˜/Programmers

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์‹œ์ € ์•”ํ˜ธ ํ’€์ด - JAVA

GaGah 2022. 8. 15. 19:31

๐Ÿ“LEVEL1 : ์‹œ์ € ์•”ํ˜ธ 

  • ์œ ํ˜• : ๊ตฌํ˜„

 

๐Ÿ“ํ’€์ด๋ฐฉ๋ฒ•

์ž…๋ ฅ๊ฐ’์ด String ์ด๊ณ , ํ•œ ์ž๋ฆฌ๋งˆ๋‹ค n์”ฉ ์›€์ง์—ฌ์„œ ์ตœ์ข… ๊ฒฐ๊ณผ๊ฐ’์„ ๋‚ด์•ผํ•œ๋‹ค.

 

1) String์˜ ํ•œ ์ž๋ฆฌ์”ฉ ํ™•์ธ์„ ํ•ด์•ผํ•œ๋‹ค. -> char๋ฅผ ์‚ฌ์šฉํ•ด์•ผ๊ฒ ๋‹ค๊ณ  ์ƒ๊ฐ.

2) ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ํ•จ๊ป˜ ์ž…๋ ฅ๋ฐ›๋Š”๋‹ค. -> ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„์„ ํ•ด์ค˜์•ผ๊ฒ ๋‹ค๊ณ  ์ƒ๊ฐ.

3) char๋Š” intํ˜•์œผ๋กœ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๊ณ , ๊ณ„์‚ฐ์„ ํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ์ž…๋ ฅ๋ฐ›์€ n ๊ณผ ๊ฐ ์ž๋ฆฌ char ๊ฐ’์„ ๋”ํ•ด์ค€๋‹ค. 

4) z ๋˜๋Š” Z ๋ฅผ ๋„˜์–ด๊ฐ€๋Š” ๋ฒ”์œ„๋Š” ์žˆ์ผ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— a~z์˜ ๊ฐœ์ˆ˜(=26)๋ฅผ ๋นผ์ค€๋‹ค. (z or Z ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚˜๊ฒŒ ๋œ๋‹ค๋ฉด)

5) ์˜์–ด ์•ŒํŒŒ๋ฒณ์„ ์ œ์™ธํ•œ ๋‹ค๋ฅธ ๋ฌธ์ž(๊ณต๋ฐฑ)๋„ ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์˜ˆ์™ธ๋กœ ์ฒ˜๋ฆฌํ•ด์ค€๋‹ค.

 

๐Ÿ“์ฝ”๋“œ

class Solution {
    public String solution(String s, int n) {
        StringBuilder answer = new StringBuilder();

        for (int i = 0; i < s.length(); i++) {
            char sChar = s.charAt(i);

            if (Character.isUpperCase(sChar)) {
                answer.append( n + sChar <= 'Z' ? (char) (n+sChar) : (char) (n+sChar -26));
            } else if (Character.isLowerCase(sChar)) {
                answer.append( n + sChar <= 'z' ? (char) (n+sChar) : (char) (n+sChar -26));
            } else {
                answer.append(sChar);
            }
        }

        return answer.toString();
    }
}



 

๐Ÿ“ ๋ฌธ์ œ ๋งํฌ

https://school.programmers.co.kr/learn/courses/30/lessons/12926

 

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

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

programmers.co.kr

 

LIST