[프로그래머스] 순위 (python 파이썬)

코딩하는계란·2021년 6월 7일
0

프로그래머스

목록 보기
12/16
post-thumbnail

👉 순위



✍ 내 코드


from collections import defaultdict


def solution(n, results):
    gp = [[0] * (n + 1) for i in range(n + 1)]
    for w, l in results:
        gp[w][l] = 1
        gp[l][w] = -1

    for i in range(1, n + 1):
        for j in range(1, n + 1):
            if gp[i][j] == 1:
                for q in range(1, n + 1):
                    if i != q and gp[j][q] == 1:
                        gp[i][q] = 1
                        gp[q][i] = -1

            elif gp[i][j] == -1:
                for q in range(1, n + 1):
                    if i != q and gp[j][q] == -1:
                        gp[i][q] = -1
                        gp[q][i] = 1

    cnt = 0
    for i in range(1, n + 1):
        flag = 0
        for j in range(1, n + 1):
            if i != j and gp[i][j] == 0:
                flag = 1
                break
        if flag == 0:
            cnt += 1

    return cnt


✍ 팁

  • 문제 이해와 코드의 가독성이 떨어져 오래걸렸던 문제 ㅠㅠ
    코드가 굉장히 복잡한데 참고만하구 더 간단히 짜보면 좋을것 같다
profile
코딩💻 고양이😺

0개의 댓글