돌 놓기 게임
시간 제한1초메모리 제한1024 MB
원형으로 배치된 칸에서 두 플레이어가 자기 돌에 인접한 빈 칸에 번갈아 돌을 놓을 때, 각자의 최적 점수를 구합니다.
문제
개의 칸이 원형으로 배치된 게임판에서 철수와 영희가 게임을 한다. 번째 칸에는 음이 아닌 정수 가 적혀 있다. 각 칸에는 돌을 최대 하나 놓을 수 있다.
철수는 검은 돌을 개, 영희는 흰 돌을 개 갖고 있다. 먼저 두 사람이 정해진 몇 개의 칸에 돌을 놓는다. 이후 철수부터 시작해서 번갈아 턴을 진행한다. 자신의 턴에는 자신의 돌이 놓인 칸과 인접한 빈칸이 있으면 그중 하나를 골라 자신의 돌을 놓는다. 그러한 칸이 없으면 턴이 상대에게 넘어간다. 아무도 돌을 놓을 수 없으면 게임이 종료된다.
철수와 영희는 각자 자신의 돌이 놓인 칸의 점수 합을 최대화하려고 한다. 턴을 진행하기 전의 돌 배치가 주어졌을 때, 두 사람이 모두 최적의 수를 둘 경우 각자의 점수를 구하라.
입력
첫 줄에 이 주어진다. ()
둘째 줄에 개 칸의 돌 배치를 나타내는 정수 이 공백으로 구분되어 주어진다. () 이면 번째 칸에 검은 돌이 놓여 있고, 이면 흰 돌이, 이면 어떤 색의 돌도 놓여 있지 않다.
셋째 줄에 개 칸에 적힌 정수 이 공백으로 구분되어 주어진다. ()
출력
첫 줄에 철수와 영희가 얻는 점수를 공백으로 구분하여 출력한다.