๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Programmers

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 1๋‹จ๊ณ„ : ์‹œ์ € ์•”ํ˜ธ

by ์ฝ”ํŒŒ์นด 2022. 12. 1.
728x90

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 1๋‹จ๊ณ„ : ์‹œ์ € ์•”ํ˜ธ

์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต > ์—ฐ์Šต๋ฌธ์ œ > ์‹œ์ € ์•”ํ˜ธ


๐Ÿ’ฉ ๋ฌธ์ œ ์„ค๋ช…

์–ด๋–ค ๋ฌธ์žฅ์˜ ๊ฐ ์•ŒํŒŒ๋ฒณ์„ ์ผ์ •ํ•œ ๊ฑฐ๋ฆฌ๋งŒํผ ๋ฐ€์–ด์„œ ๋‹ค๋ฅธ ์•ŒํŒŒ๋ฒณ์œผ๋กœ ๋ฐ”๊พธ๋Š” ์•”ํ˜ธํ™” ๋ฐฉ์‹์„ ์‹œ์ € ์•”ํ˜ธ๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด "AB"๋Š” 1๋งŒํผ ๋ฐ€๋ฉด "BC"๊ฐ€ ๋˜๊ณ , 3๋งŒํผ ๋ฐ€๋ฉด "DE"๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. "z"๋Š” 1๋งŒํผ ๋ฐ€๋ฉด "a"๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ๋ฌธ์ž์—ด s์™€ ๊ฑฐ๋ฆฌ n์„ ์ž…๋ ฅ๋ฐ›์•„ s๋ฅผ n๋งŒํผ ๋ฏผ ์•”ํ˜ธ๋ฌธ์„ ๋งŒ๋“œ๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•ด ๋ณด์„ธ์š”.

๐Ÿ’ฉ ์ œํ•œ ์กฐ๊ฑด

โ˜๏ธ ๊ณต๋ฐฑ์€ ์•„๋ฌด๋ฆฌ ๋ฐ€์–ด๋„ ๊ณต๋ฐฑ์ž…๋‹ˆ๋‹ค.
โœŒ s๋Š” ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž, ๋Œ€๋ฌธ์ž, ๊ณต๋ฐฑ์œผ๋กœ๋งŒ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค.
๐Ÿคž s์˜ ๊ธธ์ด๋Š” 8000์ดํ•˜์ž…๋‹ˆ๋‹ค.
๐Ÿ‘Œ n์€ 1 ์ด์ƒ, 25์ดํ•˜์ธ ์ž์—ฐ์ˆ˜์ž…๋‹ˆ๋‹ค.

๐Ÿ’ฉ ๋ฌธ์ œ ํ’€์ด

function solution(s, n) {
    let answer = [];
    let abc = "abcdefghijklmnopqrstuvwxyz";
    let ABC = abc.toUpperCase();

    for(i=0; i<s.length; i++){
        for(j=0; j<26; j++){
            if(s[i] == abc[j]) {answer.push(abc[j+n]); if(j+n >= 26){answer.pop(); answer.push(abc[j+n-26])}}
            if(s[i] == ABC[j]) {answer.push(ABC[j+n]); if(j+n >= 26){answer.pop(); answer.push(ABC[j+n-26])}}
        }
        if(s[i] == " ") {answer.push(" ")}
    }
    return answer.join("");
}

for๋ฌธ์„ ๋Œ๋ ค์„œ s์— ์žˆ๋Š” ๊ฐ’๋“ค์„ ํ•˜๋‚˜ํ•˜๋‚˜ ๋น„๊ตํ•ด answer ๋ฐฐ์—ด ์•ˆ์— ๋„ฃ์–ด์ฃผ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒŒ ๋ญ๋ผ๊ณ  ํ‘ธ๋Š” ๋ฐ 2912์ผ ๊ฑธ๋ ธ์Šต๋‹ˆ๋‹ค.

๐Ÿ’ฉ ๋‹ค๋ฅธ ํ’€์ด

function caesar(s, n) {
    return s.replace(/([a-z])|([A-Z])/g, (c, lowerCase) => {
        var startCode = lowerCase ? 'a'.charCodeAt(0) : 'A'.charCodeAt(0)
        return String.fromCharCode((c.charCodeAt(0) - startCode + n) % 26 + startCode)
    })
}

๋‹ค๋ฅธ ํ’€์ด๋“ค์€ ๋‹ค ๋ฌธ์ž๋ฅผ ์œ ๋‹ˆ์ฝ”๋“œ๋กœ ๋ณ€ํ™˜ํ•˜๊ฑฐ๋‚˜ ์ƒํŒ ์ฒ˜์Œ ๋ณด๋Š” ๋ฉ”์„œ๋“œ๋“ค์„ ๋งŽ์ด ์‚ฌ์šฉํ–ˆ๋”๋ผ๊ณ ์š”. ๊ทธ๋ž˜์„œ 1๋„ ์ดํ•ด๊ฐ€ ์•ˆ ๋ฉ๋‹ˆ๋‹ค. ์ด ํ’€์ด๋„ ๋งˆ์ฐฌ๊ฐ€์ง€... formCharCode() ๋ฉ”์„œ๋“œ๋Š” ์œ ๋‹ˆ์ฝ”๋“œ๋ฅผ ๋‹ค์‹œ ๋ฌธ์ž๋กœ ๋ณ€ํ™˜์‹œํ‚จ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์•„๋ฌดํŠผ ์ด ๋ฌธ์ œ๋Š” ๋‹ค์‹œ ๋“ค์—ฌ๋‹ค๋ณด๊ณ  ์‹ถ์ง€ ์•Š๋„ค์š”...

728x90

๋Œ“๊ธ€

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๐Ÿฆ™

CSS
๊ด‘๊ณ  ์ค€๋น„์ค‘