🍳 [문제]
낙차가 가장 큰 상자를 구하여 그 낙차를 리턴 하는 프로그램을 작성하시오.
# [input]
1
9
7 4 2 0 0 6 0 7 0
# [output]
7
N = 9
numbers = [7, 4, 2, 0, 0, 6, 0, 7, 0]
final_list=[[0]*9 for _ in range(9)]
# numbers에 적힌 각 리스트 숫자 크기 만큼 0을 1로 바꾸어 준다.
for i in range(N):
for j in range(numbers[i]):
final_list[i][j] = 1
count_list=[]
max=0
# 행
for k in range(N): # 0~8
# 열
for m in range(N) : # 0~8
count=0
# 상자가 있으면
if final_list[k][m] == 1:
# 상자가 있는 열 바로 아래부터 완전 탐색
for n in range(k+1,N):
if final_list[n][m] == 0:
count+=1
# 항상 max에 최댓값이 들어가도록 if문 설정
if count > max:
max = count
print(max)
'# 3. APS > SWEA' 카테고리의 다른 글
SWEA # Python_D1_2063_중간값 찾기 ✅ (0) | 2021.02.14 |
---|---|
SWEA # Python_D1_2072_홀수만 더하기 ✅ (0) | 2021.02.14 |
SWEA # Python_D2_1966_숫자를 정렬하자 (버블소트) ✅ (0) | 2021.02.12 |
SWEA # Python_D2_1959_두 개의 숫자열 ✅ (0) | 2021.02.12 |
SWEA # Python_D1_2071_평균값 구하기 ✅ (0) | 2021.02.12 |