터키식 룰렛
시간 제한3초메모리 제한128 MB
바퀴의 인접한 두 칸을 겹치지 않게 B개의 공에 순서대로 배정해, 각 공의 값(공 번호 곱하기 두 칸의 합)의 총합이 최대가 되도록 하는 이익을 구한다.
문제
터키식 룰렛은 슬롯이 개인 룰렛 휠로 진행하는 베팅 게임이다. 각 슬롯에는 부터 사이의 정수가 하나씩 적혀 있다. 한 턴마다 플레이어들은 개의 공에 베팅하며, 각 공에도 부터 사이의 번호가 매겨져 있다. 모든 공은 정확히 한 명의 플레이어가 베팅한다.
휠을 돌린 뒤 딜러는 개의 공을 하나씩 차례로 던져 넣는다. 휠이 멈추면 각 공은 아래 그림처럼 인접한 두 슬롯 위에 걸쳐진다(그림은 슬롯 32개와 공 4개가 있는 휠이다). 공 하나가 인접한 두 슬롯을 차지하므로, 휠에는 최대 개의 공이 들어갈 수 있다.

공들은 던져 넣은 상대적 순서를 그대로 유지한 채 자리를 잡는다. 즉 공 , , 를 이 순서로 던지면, 시계 방향으로 다음에 가, 다음에 가, 그리고 다음에 다시 가 오도록 놓인다.
한 공의 값은 그 공의 번호에 공이 걸쳐 있는 두 슬롯 번호의 합을 곱한 값이다. 이 값이 양수이면 딜러가 그 공에 베팅한 플레이어에게 그 값만큼을 지불하고, 음수이면 그 플레이어가 그 절댓값만큼을 딜러에게 지불한다. 이 턴에서 딜러의 이익은 받은 금액의 합에서 지불한 금액의 합을 뺀 값이다.
예를 들어 위 그림에서 딜러는 번호가 인 공에 대해 $5.00를 지불하고, 번호가 인 공에 대해 $7.00를 지불하며, 번호가 인 공에 대해 $24.00를 받고, 번호가 인 공에 대해서는 아무것도 주고받지 않는다. 따라서 이 턴에서 딜러의 이익은 $12.00이다(). 딜러의 이익은 음수(손해)일 수도 있음에 유의하라.
휠의 정보, 공들의 정보, 그리고 공을 던져 넣는 순서가 주어질 때, 딜러가 한 턴에서 얻을 수 있는 최대 이익을 구하는 프로그램을 작성하라.
입력
입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스의 첫 줄에는 두 정수 와 가 주어진다. 는 휠의 슬롯 수(), 는 사용하는 공의 수()이다. 둘째 줄에는 슬롯의 번호 가 시계 방향으로 개 주어진다(에 대해 ). 셋째 줄에는 공의 번호 가 공을 던져 넣는 순서대로 개 주어진다(에 대해 ). 이 순서가 곧 공들이 자리를 잡았을 때의 시계 방향 순서이다. 입력의 끝은 인 줄로 표시되며, 이 줄은 처리하지 않는다.
출력
각 테스트 케이스마다 한 줄에, 딜러가 그 턴에서 얻을 수 있는 최대 이익을 나타내는 정수 하나를 출력한다.