정N면체와 정M면체 주사위를 던져서 나올 수 있는 눈의 합 중 가장 확률이 높은 숫자를 출력, 여러 개일 경우 오름차순 정렬
n, m = map(int, input().split())
arr = []
result_dict = dict()
for i in range(1, n+m+1):
result_dict.setdefault(i, 0)
for i in range(1, n+1):
for j in range(1, m+1):
result_dict[i+j] += 1
sorted_dict = sorted(result_dict.items(), key=lambda x: x[1], reverse=True)
max_value = sorted_dict[0][1]
for k, v in result_dict.items():
if v == max_value:
arr.append(k)
print(*arr)
arr
과, 주사위 눈의 합을 저장할 딕셔너리 result_dict
선언 및 초기화result_dict
내부의 초기 key, value 저장N+M
요소마다 for
Loop을 돌며 value값 +1result_dict
를 value값으로 정렬, 내림차순 정렬한 뒤 최대값(max_value
)에 저장result_dict
을 완전탐색하며 value값이 max_value
와 같을 경우 처리결과 리스트에 저장arr
리스트 언패킹하여 출력n, m = map(int, input().split())
cnt = [0] * (n+m+3)
max = 0
for i in range(1, n+1):
for j in range(1, m+1):
cnt[i+j] = cnt[i+j]+1
for i in range(n+m+1):
if cnt[i] > max:
max = cnt[i]
for i in range(n+m+1):
if cnt[i] == max:
print(i, end=' ')