#include #include using namespace std; using namespace atcoder; typedef long long ll; int main(){ ll INF=1000000000; int N,K; mcf_graph G(N*3+2); cin>>N>>K; int m; ll a; int x; //G.add_edge(N*2,N*2+1,K,INF*N); G.add_edge(N*3,N*2,K,0); G.add_edge(N*3-1,N*3+1,K,INF); for(int i=0;i>a>>m; if(i){ G.add_edge(N*2+i-1,N*2+i,K,INF); } G.add_edge(N*2+i,i,K,a); G.add_edge(i,i+N,K,0); if(i+1==N){ G.add_edge(i+N,N*3+1,K,INF-a); }else{ G.add_edge(i+N,N*2+i+1,K,INF-a); } for(int j=0;j>x; G.add_edge(x+N-1,i,1,INF*(i-x+1)); } } cout<