BOJ 13022 - 늑대와 올바른 단어 (Python)

조민수·2024년 4월 10일
0

BOJ

목록 보기
41/64
post-custom-banner

S2, 문자열, 구현


풀이

  • 간단해보였는데 엄청 헤맸다.
  • 처음엔 stack을 통해서 해결하고자 했는데 실패했다.
  • 구글링을 참고하면서 딕셔너리를 통해 푼다는 내 기조가 틀리지 않은 거 같아서 해결할 수 있었다.
from sys import stdin
words = stdin.readline().rstrip()
from collections import defaultdict

if len(words) % 4 != 0:
    print(0)
    exit()

if words.count('w') != words.count('o'):
    print(0)
    exit()

dic = defaultdict(int)
for c in words:
    if c == 'w':
        dic['w'] += 1
        if dic['o'] > 0 or dic['l'] > 0 or dic['f'] > 0:
            print(0)
            exit()
    elif c == 'o':
        if dic['w'] == 0:
            print(0)
            exit()
        dic['o'] += 1
    elif c == 'l':
        if dic['w'] != dic['o']:
            print(0)
            exit()
        dic['l'] += 1
    else:
        if dic['w'] != dic['o'] or dic['o'] != dic['l']:
            print(0)
            exit()
        dic['f'] += 1

    if len(set(dic.values())) == 1:
        for x in ['w', 'o', 'l', 'f']:
            dic[x] = 0

if len(set(dic.values())) == 1:
    print(1)
else:
    print(0)
profile
사람을 좋아하는 Front-End 개발자
post-custom-banner

0개의 댓글