반응형
import sys
input = sys.stdin.readline
n = int(input())
m = int(input())
matrix = []
answer = 0
friends = set() #친구
f_friends = set() #친구의 친구
for i in range(m):
a,b = map(int,input().split())
matrix.append([a,b])
for i in range(m):
if matrix[i][0] == 1:
answer += 1
friends.add(matrix[i][1])
for i in range(m):
#친구의 친구를 찾는 if문
if matrix[i][0] in friends and matrix[i][1] not in friends and matrix[i][1] not in f_friends:
answer += 1
f_friends.add(matrix[i][1])
if matrix[i][1] in friends and matrix[i][0] not in friends and matrix[i][0] != 1 and matrix[i][0] not in f_friends:
answer += 1
f_friends.add(matrix[i][0])
print(answer)
<내 풀이>
sys만 사용해줬을 뿐인데 시간 단축이 많이 되었다.
알고리즘적으로 이 코드보다 더 좋은 코드를 짤 수 있을 것 같다.
내 풀이는 굉장히 단순하게 푼 풀이인 것 같다.😂
반응형
'알고리즘 > 구현' 카테고리의 다른 글
[파이썬🐍] 백준 1476 : 날짜 계산 (0) | 2021.06.27 |
---|
댓글