Algorithm Study/Python

[코드업 파이썬] # 4012 석차 계산

728x90
반응형

구조체 연습

# 4012 석차 계산

링크 : https://codeup.kr/problem.php?id=4012&rid=0

 

석차 계산

[문제 2] 정렬되지 않은 학생들의 임의의 점수를 입력하여 석차를 계산하는 프로그램을 작성하시오. 점수는 동점이 있을 수 있으며, 이러한 경우 같은 석차로 처리한다. 예를 들어 5명의 점수 100,

codeup.kr

 

 

풀이

n = int(input())
scores = list(map(int, input().split()))
result = []


for i in range(n):
    rank = 1
    for j in range(n):
        if scores[i] < scores[j]:
            rank += 1
    result.append(rank)

for i in range(n):
    print(scores[i], result[i])

 

  • rank 변수를 만들고 리스트 내 모든 값과 비교해가는 방식으로 풀이 해야한다
  • 시간복잡도는 O(N^2) : n개 리스트의 i번에 대해 n개의 값과 비교를 진행했으므로
  • 이중 for문을 통해 등수를 찾는 풀이가 생소해서 반복숙달이 필요할 듯 하다