728x90
이 문제의 핵심은 초기 상태와 목표 상태의 배열을 for문으로 비교해 만약 원소가 다르다면 그것들을 새로운 배열로 만드는 것이다
그렇게 새로 만든 배열을 arr이라 한다면 그 배열에 W가 많은지 B가 많은 지를 비교해 그 숫자를 세어주면 된다.
여기서 주의할 점은 새로운 테스트 데이터를 만들 때 arr 리스트를 초기화해주어야 한다.
n = int(input())
array_1 = []
array_2 = []
ans = 0
arr = []
ans_fin = []
for i in range(n):
k = int(input())
array_1 = list(input())
array_2 = list(input())
for j in range(k):
if array_1[j] != array_2[j]:
arr.append(array_1[j]) #원소가 다르다면 새로운 arr로 집어넣는다.
if arr.count("B") >= arr.count("W"):
ans = arr.count("B")
else:
ans = arr.count("W")
ans_fin.append(ans)
arr = [] #arr을 초기화해준다
for t in ans_fin:
print(t)
'Algorithm' 카테고리의 다른 글
백준 알고리즘 파이썬(Python) 1449번 수리공 항승 (0) | 2021.07.06 |
---|---|
백준 알고리즘 파이썬(Python) 16162번 가희와 3단 고음 (0) | 2021.06.12 |
백준 알고리즘 파이썬(Python) 19941번 햄버거분배 (0) | 2021.06.03 |
백준 알고리즘 파이썬(Python) 2847번 게임을 만든 동준이 (0) | 2021.06.02 |
백준 알고리즘 파이썬(Python) 20365번 블로그2 (0) | 2021.06.01 |