728x90

2019 인하대학교 프로그래밍 경진대회(IUPC) G번 문제

 

17269번: 이름궁합 테스트

시윤이는 좋아하는 이성이 생기면 가장 먼저 이름궁합부터 본다. 이름궁합을 보는 방법은 간단하다. 먼저 이름을 알파벳 대문자로 적는다. 각 알파벳 대문자에는 다음과 같이 알파벳을 적는데 필요한 획수가 주어진다. 예를 들어, 두 사람의 이름인 LEESIYUN, MIYAWAKISAKURA 를 같이 표현했을 때 다음과 같이 먼저 주어진 이름부터 한 글자씩 적는다. 두 사람의 이름을 알파벳 대문자로 표현한 뒤, 한 글자씩 번갈아가며 적는다. 예시 :  L M E

www.acmicpc.net

from sys import stdin
n, m = list(map(int, stdin.readline().split()))
n1, n2 = stdin.readline().split()
n1_index = 0
n2_index = 0
s = ""
alphabet = {'A':3, 'B':2, 'C':1, 'D':2, 'E':4, 'F':3, 'G':1, 'H':3, 'I':1, 'J':1, 'K':3, 'L':1, 'M':3, 'N':2, 'O':1, 'P':2, 'Q':2, 'R':2, 'S':1, 'T':2, 'U':1, 'V':1, 'W':1, 'X':2, 'Y':2, 'Z':1}
while not (n1_index == n and n2_index == m):
    if n1_index < len(n1):
        s += n1[n1_index]
        n1_index += 1
    if n2_index < len(n2):
        s += n2[n2_index]
        n2_index += 1
count = [0] * (n + m)
for i in range(n + m):
    count[i] = alphabet[s[i]]
for i in range(n + m - 1, 1, -1):
    for j in range(i):
        count[j] = (count[j] + count[j + 1]) % 10
print("{}%".format(count[0] * 10 + count[1]))
728x90

'알고리즘 문제' 카테고리의 다른 글

[백준] 17266번 어두운 굴다리  (0) 2020.01.18
[백준] 17264번 I AM IRONMAN  (0) 2020.01.18
[백준] 1932번 정수 삼각형  (0) 2020.01.18
[백준] 14890번 경사로  (0) 2020.01.16
[백준] 14503 로봇 청소기  (0) 2020.01.15

+ Recent posts