https://www.acmicpc.net/problem/15813
문제분석
입력할 문자열의 길이를 먼저 입력한다. 다음으로 입력한 문자열의 길이만큼 대문자 알파벳들을 입력한다.
입력한 각 알파벳 대문자의 순서만큼 모두 합친 값이 문제에서 요구하는 이름의 점수를 뜻한다.
코드
문제풀이
우선, 문제에서 요구하는 문자열의 길이(n)와 문자열(a)을 입력받는다. 다음으로 문자열의 각각의 한 글자를 리스트처럼 취급하기 위해서 for문을 활용한다. 여기서 처음에 입력한 문자열의 길이(n)를 사용하고, 각 문자의 순서를 얻기 위해서는 알파벳의 진수화를 활용한다.
하지만 여기서 주의할 점은, 알파벳의 진수화와 문제에서 요구하는 순서와는 다르다. 'A'의 경우 진수로 표현하면(ord) 65이지만, 문제에서는 첫 번째 알파벳이므로 1로 취급한다. 그렇기 때문에 모든 문자의 진수화에서 64의 값을 뺀 값만큼 모두 더 해준다면 문제에서 요구하는 모든 문자의 합을 구할 수 있다.
'Koala - 5기 > 기초 알고리즘 스터디' 카테고리의 다른 글
[백준/python] 15813번:너의 이름은 몇 점이니? (0) | 2022.01.30 |
---|---|
[백준/python] 9226:도깨비말 (0) | 2022.01.30 |
<3주차> [BOJ / C++] 1874번 - 스택 수열 (0) | 2022.01.29 |
[백준|python] 2852번 NBA 농구 (0) | 2022.01.28 |
[백준|python] 1966번 프린터 큐 (0) | 2022.01.26 |