만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

육회비빔밥

면접 대비

시간 제한1초메모리 제한512 MB

요약
보슨은 N개의 시식 장소를 모두 한 번씩 방문하는 순서를 정합니다. 연속한 두 장소의 C 곱이 K 이하여야 하며, 감칠맛 합의 최댓값을 구하고 불가능하면 -1을 출력합니다.
난이도

보통10점 중 4점

유형
동적 계획법, 비트 연산
정답자
아직 제출이 없습니다

문제

진주 나들이를 온 보선이는 배가 너무 고파 육회비빔밥을 먹으러 진주 대안동에 갔다. 그런데 웬 떡인가, 육회비빔밥 시식 행사가 진행 중이었다. 대식가이자 미식가인 보선이는 감칠맛을 최대한 살리기 위해 육회비빔밥을 전부 먹으려고 한다. 하지만 시식대 직원의 눈치가 조금씩 보이기 시작했다. 그래서 각 시식대의 정보를 파악한 뒤 전략적으로 먹기로 했다.

육회비빔밥 시식대는 총 NN개이다. 각 시식대에는 육회비빔밥 한 그릇과 직원 1명이 있으며, 육회비빔밥의 단맛, 짠맛, 그리고 직원이 눈치를 주는 정도는 수치로 나타낼 수 있다. 보선이는 육회비빔밥이 남아 있는 시식대 중 하나를 골라 갈 수 있으며, 한 시식대에 갈 때마다 그곳의 육회비빔밥을 모두 먹어야 한다.

보선이가 ii번째로 간 시식대의 육회비빔밥 단맛과 짠맛을 각각 AiA_i, BiB_i라고 하면, 보선이가 느끼는 총 감칠맛은 다음과 같다. ∑i=2NAi−1×Bi\sum_{i=2}^{N} A_{i-1} \times B_i

보선이는 첫 번째 시식대에서는 눈치를 받지 않지만, 두 번째 시식대부터는 눈치를 받는다. ii번째로 간 시식대 직원이 눈치 주는 정도를 CiC_i라고 하면, ii(i≥2i \ge 2)번째 시식대에서 보선이가 받는 눈치의 정도는 Ci−1×CiC_{i-1} \times C_i이다. 다만 보선이는 KK만큼의 뻔뻔함을 지니고 있어서, 눈치 정도가 KK 이하이면 개의치 않고 그곳의 육회비빔밥을 먹는다. 눈치 정도가 KK를 넘으면 육회비빔밥을 먹지 못하고 시식을 중단한다.

이러한 조건을 고려해 보선이가 육회비빔밥 NN그릇을 모두 먹었을 때 느낄 수 있는 총 감칠맛의 최댓값을 구하시오.

입력

첫 번째 줄에는 시식대의 개수 NN과 보선이의 뻔뻔함의 정도 KK가 공백으로 구분되어 주어진다. (2≤N≤102 \le N \le 10, 1≤K≤1001 \le K \le 100)

두 번째 줄에는 각 시식대 육회비빔밥의 단맛 A1,…,ANA_1, \dots, A_N이 공백으로 구분되어 주어진다. (1≤Ai≤101 \le A_i \le 10)

세 번째 줄에는 각 시식대 육회비빔밥의 짠맛 B1,…,BNB_1, \dots, B_N이 공백으로 구분되어 주어진다. (1≤Bi≤101 \le B_i \le 10)

네 번째 줄에는 각 시식대 직원의 눈치 정도 C1,…,CNC_1, \dots, C_N이 공백으로 구분되어 주어진다. (1≤Ci≤101 \le C_i \le 10)

입력으로 주어지는 모든 수는 정수이다.

출력

첫 번째 줄에 보선이가 육회비빔밥 NN그릇을 모두 먹었을 때 느낄 수 있는 총 감칠맛의 최댓값을 출력한다. 육회비빔밥 NN그릇을 모두 먹을 수 없다면 -1을 출력한다.

힌트

Python 3 사용자는 PyPy3로 제출하는 것을 권장한다.

예제2

  1. 예제 1

    입력
    3 6
    10 5 2
    2 10 5
    2 3 1
    
    예상 출력
    125
    
  2. 예제 2

    입력
    3 8
    1 1 1
    2 2 2
    3 3 3
    
    예상 출력
    -1