아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

책 구매하기

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

요약
M개 서점이 가진 책을 N명에게 경로별 배송비 합이 최소가 되도록 나눠 보냅니다.
난이도

보통10점 중 7점

유형
그래프, 최단 경로
정답자
아직 제출이 없습니다

문제

NN명이 같은 책을 사려고 한다. 사람에게는 1번부터 NN번까지 번호가 붙어 있고, ii번 사람이 사려는 책은 AiA_i권이다. 이 책을 파는 온라인 서점은 MM곳이다. 서점에도 1번부터 MM번까지 번호가 붙어 있고, ii번 서점이 가진 책은 BiB_i권이다.

이 책을 사려는 사람은 이 NN명뿐이고, 서점이 가진 책의 총합과 사람들이 사려는 책의 총합은 같다.

서점은 책을 한 권씩만 택배로 보낸다. 택배비는 서점과 사람 사이의 거리, 회원 등급 등 여러 요인에 따라 정해진다. 서점 ii가 사람 jj에게 책 한 권을 보내는 배송비는 CijC_{ij}원이다.

모든 서점과 사람 사이의 배송비가 주어질 때, 각 사람이 원하는 만큼 책을 사는 데 드는 배송비 합의 최솟값을 구하는 프로그램을 작성하시오.

입력

첫째 줄에 사람의 수 NN과 온라인 서점의 수 MM이 주어진다. (1≤N,M≤1001 \le N, M \le 100)

둘째 줄에 각 사람이 사려는 책의 개수 A1,A2,…,ANA_1, A_2, \dots, A_N이 주어진다. (1≤Ai≤1001 \le A_i \le 100)

셋째 줄에 각 온라인 서점이 가진 책의 개수 B1,B2,…,BMB_1, B_2, \dots, B_M이 주어진다. (1≤Bi≤1001 \le B_i \le 100)

넷째 줄부터 MM개의 줄에 배송비가 주어진다. ii번째 줄의 jj번째 수는 서점 ii가 사람 jj에게 책 한 권을 보내는 배송비 CijC_{ij}이다. (1≤Cij≤10001 \le C_{ij} \le 1000)

A1+A2+⋯+ANA_1 + A_2 + \dots + A_N은 B1+B2+⋯+BMB_1 + B_2 + \dots + B_M과 같다.

출력

첫째 줄에 배송비 합의 최솟값을 출력한다.

힌트

첫 번째 예제에서 서점 1이 사람 3에게 4권, 사람 2에게 1권을 보내고, 서점 2가 사람 1, 사람 2, 사람 4에게 한 권씩 보내고, 서점 3이 사람 1에게 2권, 서점 4가 사람 4에게 한 권을 보내면 배송비의 합은 30이다.

예제2

  1. 예제 1

    입력
    4 4
    3 2 4 2
    5 3 2 1
    5 6 2 1
    3 7 4 1
    2 10 3 1
    10 20 30 1
    
    예상 출력
    30
    
  2. 예제 2

    입력
    3 3
    2 2 2
    1 2 3
    1 1 1
    50 60 70
    40 30 20
    
    예상 출력
    171