강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

정혜원님의 프로필 이미지
정혜원

작성한 질문수

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

아나그램 개선 전 문제풀이 오류

작성

·

295

0

str1 = input()
str2 = input()

dict1 = {}
dict2 = {}
for x in str1:
    dict1[x] = dict1.get(x, 0) + 1
for x in str2:
    dict2[x] = dict2.get(x, 0) + 1

for i in dict1.keys():
    if i in dict2.keys():
        if dict1[i] != dict2[i]:
            print('NO')
            break
    else:
        print('NO')
        break
else:
    print('YES')

이 코드는 강의에 있는 개선 전의 딕셔너리 풀이 코드입니다.

개선의 문제가 아니라 이 코드 자체에 오류가 있는 거 같아요!

str1이 AaBb이거 str2가 AaBbCc이면 답이 'NO' 여야하는데 'YES'로 나와요.

즉 dic1이 dict2에 포함관계이면 무조건 'YES'가 나오는 것 같습니다

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

문제에 보시면 길이가 같은 2개의 문자열이 들어온다고 명시되어 있습니다. 

정혜원님의 프로필 이미지
정혜원

작성한 질문수

질문하기