반응형
Notice
Recent Posts
Link
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Archives
Today
Total
관리 메뉴

500error

[COS Pro 2급, Python] 3차 1번 : 학생의 등수 구하기 본문

알고리즘/파이썬

[COS Pro 2급, Python] 3차 1번 : 학생의 등수 구하기

Internal Server Error 2024. 1. 3. 22:24
반응형

문제

학생들의 시험 점수가 주어졌을 때, n번 학생이 몇 등인지 구하려 합니다.
학번은 0번부터 시작하며, 시험 점수는 학번순으로 주어집니다.
예를 들어 학생 네 명의 시험 점수가 다음과 같은 경우
학생번호 0번 1번 2번 3번
수학점수 20 60 98 59
3번 학생은 3등을 했습니다.
이를 위해 다음과 같이 프로그램 구조를 작성했습니다.
  1. n번 학생의 점수를 변수에 저장합니다.
  2. 점수를 내림차순으로 정렬합니다.
  3. 배열의 첫 번째 원소부터 마지막 원소까지 순회하며 n번 학생의 점수를 찾습니다.
  4. 1번 단계에서 저장해둔 점수와 같은 점수를 찾으면 등수를 return 합니다.
학생들의 시험 점수가 번호순으로 들은 배열 scores와 scores의 길이 scores_len, 학번 n이 solution 함수의 매개변수로 주어질 때, n번 학생의 등수를 return 하도록 solution 함수를 작성하려 합니다. 위 구조를 참고하여 코드가 올바르게 동작하도록 빈칸에 주어진 func_a, func_b, func_c 함수와 매개변수를 알맞게 채워주세요.

 

 

 

 

code

def func_a(scores, score):
	rank = 1
	for s in scores:
		if s == score:
			return rank
		rank += 1
	return 0

def func_b(arr):
	arr.sort(reverse=True)

def func_c(arr, n):
	return arr[n]
    
    

def solution(scores, n):
	score = func_c(scores, n)
	func_b(scores)
	answer = func_a(scores, score)
	return answer
    


scores = [20, 60, 98, 59]
n = 3
ret = solution(scores, n)

print("solution 함수의 반환 값은", ret, "입니다.")
반응형
Comments