[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์‹œ์ € ์•”ํ˜ธ /ํŒŒ์ด์ฌ /Python
Algorithm/Programmers

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์‹œ์ € ์•”ํ˜ธ /ํŒŒ์ด์ฌ /Python

728x90
๋ฐ˜์‘ํ˜•

๐Ÿ’กsolutions )

 

โœ… ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„ํ•ด์ค€ ํ›„ ord ๋ฉ”์†Œ๋“œ๋กœ ์•„์Šคํ‚ค ์ฝ”๋“œ ๋ณ€ํ™˜ -> ์ด๋•Œ ๋งˆ์ง€๋ง‰ Z๋ฅผ ๋ฒ—์–ด๋‚˜๋Š” ๊ฒฝ์šฐ๋Š” 26์„ ๋นผ์ฃผ์–ด ๋‹ค์‹œ A๋กœ ๋Œ์•„๊ฐ€ ๊ณ„์‚ฐ -> chr ๋ฉ”์†Œ๋“œ๋กœ ๋‹ค์‹œ ๋ฌธ์ž์—ด ๋ณ€ํ™˜

 

โœ… ์•„๋ž˜ ์•„์Šคํ‚ค ์ฝ”๋“œํ‘œ ์ฐธ๊ณ 

 

[ํ‘œ = ์•„์Šคํ‚ค์ฝ”๋“œํ‘œ]

 

๐ŸŽซcode )

def solution(s, n):
    answer = ''
    s = list(s)
    for a in s:
        if a != ' ':
            num = ord(a) + n
            if 65 <= ord(a) <= 90: # ๋Œ€๋ฌธ์ž
                if num > 90:  # ๋งˆ์ง€๋ง‰ Z๋ฅผ ๋„˜์–ด๊ฐ€๋Š” ๊ฒฝ์šฐ ์ฒ˜๋ฆฌ
                    num = num - 26
                res = chr(num)
            else:                  # ์†Œ๋ฌธ์ž
                if num > 122: # ๋งˆ์ง€๋ง‰ z ๋„˜๊ฐ€๋Š” ๊ฒฝ์šฐ
                    num = num - 26
                res = chr(num)
            answer += res
        else: # ๊ณต๋ฐฑ ๋ฌธ์ž ์ฒ˜๋ฆฌ
            answer += a
    return answer

 

๐Ÿ“Œ description )

๋ฌธ์ œ์ถœ์ฒ˜ : programmers.co.kr/learn/courses/30/lessons/12926?language=python3

 

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

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

programmers.co.kr

 

๋ฌธ์ œ ์„ค๋ช…

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

์ œํ•œ ์กฐ๊ฑด

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

์ž…์ถœ๋ ฅ ์˜ˆ

s                                                n                                                 result
AB 1 BC
z 1 a
a B z 4 e F d

 

๋ฐ˜์‘ํ˜•