Development Artist

[COS Pro 1급, Python] 6차 5번 : 코인을 많이 획득하세요 본문

Algorithm/COS

[COS Pro 1급, Python] 6차 5번 : 코인을 많이 획득하세요

JMcunst 2022. 3. 1. 11:48
728x90
반응형

문제 유형

 한줄 수정(디버깅)

난이도

 easy

Note 

 1. 문제 자체는 쉬웠다.

 2. 하지만, 함수 구현 문제로 나올 수 있으니, 해당 로직은 알 필요가 있다.

 3. coins[0][0] 부터 시작해서 오른쪽, 아래로 가면서 코인을 더해감.

 

Code

# -*- coding: utf-8 -*-
# UTF-8 encoding when using korean

def solution(board):
	coins = [[0 for c in range(4)] for r in range(4)]
	for i in range(4):
		for j in range(4):
			if i == 0 and j == 0: # 초기세팅
				coins[i][j] = board[i][j]
			elif i == 0 and j != 0: # 아래로
				coins[i][j] = board[i][j] + coins[i][j-1]
			elif i != 0 and j == 0: # 오른쪽
				coins[i][j] = board[i][j] + coins[i-1][j]
			else:
				coins[i][j] = board[i][j] + max(coins[i-1][j], coins[i][j-1])
	answer = coins[3][3]
	return answer

board = [[6, 7, 1, 2], [3, 5, 3, 9], [6, 4, 5, 2], [7, 3, 2, 6]]
ret = solution(board)

print("solution 함수의 반환 값은", ret, "입니다.")

 

※ 가끔 코드 중 print(~)가 있습니다. 정리 못한 점 죄송합니다.

※ 반례가 있으면 알려주시면 감사하겠습니다.

728x90
반응형
Comments