본문 바로가기
Beakjoon&프로그래머스/파이썬

[백준/파이썬] 11284번 초성 중성 종성

by 현장 2022. 8. 11.

-Code

start = ['ㄱ', 'ㄲ', 'ㄴ', 'ㄷ', 'ㄸ', 'ㄹ', 'ㅁ', 'ㅂ', 'ㅃ',
         'ㅅ', 'ㅆ', 'ㅇ', 'ㅈ', 'ㅉ', 'ㅊ', 'ㅋ', 'ㅌ', 'ㅍ',
         'ㅎ']

middle = ['ㅏ', 'ㅐ', 'ㅑ', 'ㅒ', 'ㅓ', 'ㅔ', 'ㅕ', 'ㅖ', 'ㅗ',
          'ㅘ', 'ㅙ', 'ㅚ', 'ㅛ', 'ㅜ', 'ㅝ', 'ㅞ', 'ㅟ', 'ㅠ',
          'ㅡ', 'ㅢ', 'ㅣ']
end = ['', 'ㄱ', 'ㄲ', 'ㄳ', 'ㄴ', 'ㄵ', 'ㄶ', 'ㄷ', 'ㄹ', 'ㄺ',
       'ㄻ', 'ㄼ', 'ㄽ', 'ㄾ', 'ㄿ', 'ㅀ', 'ㅁ', 'ㅂ', 'ㅄ', 'ㅅ',
       'ㅆ', 'ㅇ', 'ㅈ', 'ㅊ', 'ㅋ', 'ㅌ', 'ㅍ', 'ㅎ']


word = ord(input()) - 44032
print(start[word // 21 // 28])
print(middle[word % (21 * 28) // 28])
print(end[word % 28])

 처음 봤을 때, 영어랑 다르게 생소해서 풀지 못했습니다. 그래서 방법을 찾아보니 숫자 부분에서 조금 다를 뿐 방법아 바숫해서 해결을 했습니다.