동빈이의 큰 수의 법칙은 다양한 수로 이루어진 배열이 있을 때 주어진 수들을 M번 더하여 가장 큰 수를 만드는 법칙이다.
단, 배열의 특정한 인덱스에 해당하는 수가 연속해서 K번을 초과하여는 더해질 수 없는 것이 이 법칙의 특징이다.
배열의 크기 N, 숫자가 더해지는 횟수 M과 최대 연속 덧셈 가능 횟수 K가 주어지고, 배열의 N개의 숫자가 주어질 때 동빈이의 큰 수의 법칙에 따른 결과를 출력하는 문제이다.
- 입력
5 8 3
2 4 5 4 6- 출력
46
N, M = map(int, input().split())
max = 0
for i in range(N):
min = 100
tmp = list(map(int, input().split()))
for i in tmp:
if min > i:
min = i
if max < min:
max = min
print(max)
각 행에서의 최소값을 찾고, 이들 가운데 최대값을 찾아 출력한다.
< 이것이 취업을 위한 코딩 테스트다 with 파이썬 > 답안 예시
n, m = map(int, input().split())
result = 0
for i in range(n):
data = list(map(int, input().split()))
min_value = min(data)
result = max(result, min_value)
print(result)
참고자료
이것이 취업을 위한 코딩 테스트다 with 파이썬 - 나동빈