반응형
[ Contents ]
1. 문제 (링크 참조)
2. 문제 풀이
두 문자열이 애너그램이 되려면 몇 개의 문자를 제거해야하는지 구하는 문제입니다.
3. 코드
s1 = input()
s2 = input()
alphabet = [0]*26
for s in s1:
alphabet[ord(s)-97] += 1
for s in s2:
alphabet[ord(s)-97] -= 1
res = 0 #제거해야할 문자
for i in alphabet:
res += abs(i)
print(res)
두 문장에 쓰인 알파벳의 개수를 계산합니다. 첫 번째 단어에 쓰인 알파벳의 개수에서 두 번째 단어에 쓰인 알파벳 개수를 뺍니다. 두 단어의 알파벳 개수의 차이만큼 문자를 제거하면 애너그램이 됩니다.
반응형
'Algorithm' 카테고리의 다른 글
[구현/문자열] 백준 17609 회문 - 파이썬(Python) (0) | 2022.03.02 |
---|---|
[구현/문자열] 백준 1254 팰린드롭 만들기 - 파이썬(Python) (0) | 2022.03.02 |
[구현/문자열] 백준 1264 모음의 개수 - Python (0) | 2022.03.01 |
[구현/문자열] 백준 5586 JOI와 IOI - 파이썬(Python) (0) | 2022.03.01 |
[구현/문자열] 백준 4999 아! - 파이썬(Python) (0) | 2022.03.01 |
댓글