💡 dictionary를 잘 사용하자!!


N, K = map(int, input().split(' '))
dic = dict({10:0, 11:0, 20:0, 21:0, 30:0, 31:0,
40:0, 41:0, 50:0, 51:0, 61:0, 60:0})
cnt = 0
for _ in range(N):
S, Y = map(int, input().split(' '))
dic[10*Y + S] += 1
for key in dic:
if dic[key] % K != 0:
cnt += dic[key] // K + 1
else:
cnt += dic[key] // K
print(cnt)
💡 코딩스터디 중 나온 기발한 접근방식
import math
n, k = map(int, input().split())
arr = [[0] * 7 for _ in range(2)] # 성별과 학년을 담는 2차원 배열 생성
for _ in range(n):
s, g = map(int, input().split())
arr[s][g] += 1 # 성별에 해당하는 학년 인덱스 값을 +1
result = 0
for i in range(2):
for j in range(7):
result += math.ceil(arr[i][j] / k)
print(result)
dictionary를 사용하지 않고 2차원 배열을 사용해서 푸는 방식을 사용하셨다.
개인적으로는 dictionary를 이용해서 푸는 방식이 조금 더 직관적이여서 좋았다.