https://www.acmicpc.net/problem/5698


문제

 

문장의 모든 단어가 같은 글자로 시작하면 Tautogram 이라고 한다.

주어진 문장이 Tautogram 인지 판별하는 문제이다.

 


풀이

 

map 과 split 을 이용해서 단어들을 끊어주고, 각 단어들이 같은 글자로 시작하는지 확인하면 되는 간단한 문제이다. 주의해야 할 것은 주어지는 문장은 대소문자가 구분되어 있지만 단어들을 검사할 때는 대소문자 구분없이 검사해야 한다. 따라서 입력받을 때 upper 나 lower 을 통해 문장 전체를 대문자나 소문자로 변환해주는 것이 좋다.

단어들을 검사할 때는 단어를 [0] 으로 인덱싱하여 첫 글자와 비교해도 좋지만, startswith 를 통해서 비교하는 것이 명확하게 시작점을 비교할 수 있기 때문에 startswith 를 사용하였다.

 


코드

 

import sys

while True:
    sentence = sys.stdin.readline().rstrip().upper()
    if sentence == '*':
        break
    sentence = list(sentence.split())
    isTautogram = True
    first = sentence[0][0]
    for word in sentence:
        if not word.startswith(first):
            isTautogram = False
            break
    if isTautogram:
        print('Y')
    else:
        print('N')

 

애스터로이드