파이썬 알고리즘 문제 풀이

[백준] S3. boj2108 / 분류: 수학, 정렬

gogi masidda 2024. 5. 1. 17:06

https://www.acmicpc.net/problem/2108

import sys
import math

N = int(sys.stdin.readline())
nums = []
for i in range(N):
    n = int(sys.stdin.readline())
    nums.append(n)

length = len(nums)
nums.sort()

print(round(sum(nums) / length)) # 산술 평균

print(nums[length // 2]) #중앙값

mode_cnt = {}
for i in nums:
    if i in mode_cnt:
        mode_cnt[i] += 1
    else:
        mode_cnt[i] = 1
max_cnt = max(mode_cnt.values())
max_nums = []
for k, v in mode_cnt.items():
    if v == max_cnt:
        max_nums.append(k)

if len(max_nums) == 1:
    print(max_nums[0])
else:
    print(sorted(max_nums)[1])

print(nums[length-1] - nums[0])
728x90