카드 구매하기

아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

요즘 민규네 동네에서는 PS카드를 모으는 것이 유행이다.

PS카드는 PS(Problem Solving) 분야에서 유명한 사람의 아이디와 얼굴이 적혀 있는 카드다. 카드마다 등급을 나타내는 색이 칠해져 있고, 색은 다음 8가지다.

  • 전설카드
  • 레드카드
  • 오렌지카드
  • 퍼플카드
  • 블루카드
  • 청록카드
  • 그린카드
  • 그레이카드

카드는 카드팩 단위로만 살 수 있다. 카드팩은 카드가 1개 든 팩, 2개 든 팩, 이런 식으로 카드가 NN개 든 팩까지 모두 NN가지다. 카드가 ii개 든 카드팩의 가격은 PiP_i원이다. 같은 종류의 카드팩을 여러 번 살 수 있다.

민규는 카드 개수가 적은 팩이라도 가격이 비싸면 높은 등급의 카드가 많이 들어 있다는 미신을 믿는다. 그래서 돈을 최대한 많이 내고 카드 NN개를 사려고 한다.

예를 들어 카드팩이 4가지이고 P1=1P_1 = 1, P2=5P_2 = 5, P3=6P_3 = 6, P4=7P_4 = 7이면 민규가 카드 4개를 갖는 데 내는 금액의 최댓값은 10원이다. 카드가 2개 든 팩을 두 번 사면 된다.

P1=5P_1 = 5, P2=2P_2 = 2, P3=8P_3 = 8, P4=10P_4 = 10이면 카드가 1개 든 팩을 네 번 사서 20원을 내는 것이 최댓값이다.

P1=3P_1 = 3, P2=5P_2 = 5, P3=15P_3 = 15, P4=16P_4 = 16이면 카드가 3개 든 팩과 1개 든 팩을 사서 18원을 내는 것이 최댓값이다.

카드팩 가격이 주어졌을 때, 카드 NN개를 사려고 민규가 내는 금액의 최댓값을 구하는 프로그램을 작성하시오. NN개보다 많이 산 다음 남는 카드를 버려서 NN개를 맞추는 것은 불가능하다. 즉, 산 카드팩에 든 카드 개수의 합은 NN과 같아야 한다.

입력

첫째 줄에 민규가 사려는 카드의 개수 NN이 주어진다. (1N10001 \le N \le 1000)

둘째 줄에 P1P_1부터 PNP_N까지 순서대로 주어진다. (1Pi100001 \le P_i \le 10000)

출력

첫째 줄에 민규가 카드 NN개를 갖는 데 내는 금액의 최댓값을 출력한다.