스파르타코딩클럽/활동 내용
[스파르타] 99클럽 2기 코테스터디 25일차 TIL / 순위
신선한 스타트
2024. 6. 13. 22:18
프로그래머스: 순위 (링크)
# 풀이 참고
def solution(n, results):
answer = 0 # 정답
graph = [[-1] * (n + 1) for _ in range(n + 1)] # 그래프 데이터
# 자기 자신과의 승부는 -1로 설정
for a in range(1, n + 1) :
for b in range(1, n + 1) :
if a == b :
graph[a][b] = -1
# 1: 이긴 경우, 0: 진 경우
for i, j in results :
graph[i][j] = 1
graph[j][i] = 0
# 플로이드-워셜 사용
for k in range(1, n + 1) :
for a in range(1, n + 1) :
for b in range(1, n + 1) :
if graph[a][k] == graph[k][b] == 1 :
graph[a][b] = 1
graph[b][a] = graph[k][a] = graph[b][k] = 0
# 정답 확인
for a in range(1, n + 1) :
test_graph = graph[a][1 :]
if test_graph.count(-1) == 1 :
answer += 1
return answer
참고한 블로그: https://cyr0331.tistory.com/m/49
[알고리즘] 프로그래머스 - 순위(Python)
코딩테스트 연습 - 순위 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁
cyr0331.tistory.com