from copy import deepcopy
n = int(input())
array = []
road = []
for i in range(n):
a = list(map(int, input().split()))
array.append(a[0])
road.append(a[1])
cnt = 0
answer=0
index_num_list=[]
num = 0
example_list = deepcopy(array)
for i in range(1, 11):
ex = []
if array.count(i) <= 1:
continue
else:
for j in range(n):
if example_list.count(i) != 0:
ex.append(example_list.index(i))
example_list[example_list.index(i)] = None
index_num_list.append(ex)
for a in range(len(index_num_list)):
for b in index_num_list[a]:
if cnt==0:
num=b
cnt+=1
continue
else:
if road[b]==road[num]:
num=b
cnt+=1
else:
answer+=1
num=b
cnt+=1
cnt=0
print(answer)
.
# 출처 : 백준 사이트,,
l, ct = {}, 0 # 딕셔너리 사용
for i in range(int(input())):
a, b = map(int, input().split())
if a not in l: # 처음 리스트에 들어갈 때
l[a] = b
print(l)
# not in , in 연산자 -> 특정한 문자열 안에 찾고자하는 문자열이 있는지 확인하기.
else: # 중복된 숫자가 있을 경우
if l[a] != b: # 만약 리스트에 있는 a의 방향과, b의 값이 다르다면? -> 이동횟수 +1
ct += 1
l[a] = b
print(l)
print(ct)
이렇게 간단하게 작성할 수 있다닛..!
위 코드 분석 시작!
딕셔너리 {} , not in 연산자를 이용하면 쉽게 구현 가능,,,!
'여니의 취준 준비 > 코딩테스트 (Python)' 카테고리의 다른 글
[Python] n2578번 | 빙고 (0) | 2021.05.03 |
---|---|
[Python] n12933번 | 오리 (0) | 2021.05.03 |
[Python] n1913 | 달팽이 (0) | 2021.04.29 |
[Python] n20546 | 기적의 매매법 (0) | 2021.04.27 |
[Python] n5597 | 과제 안 내신 분..? (0) | 2021.04.27 |