結果
| 問題 | No.2713 Just Solitaire | 
| コンテスト | |
| ユーザー |  Taiki0715 | 
| 提出日時 | 2024-04-04 13:30:36 | 
| 言語 | C++23 (gcc 13.3.0 + boost 1.87.0) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 3 ms / 2,000 ms | 
| コード長 | 495 bytes | 
| コンパイル時間 | 5,191 ms | 
| コンパイル使用メモリ | 315,352 KB | 
| 実行使用メモリ | 5,248 KB | 
| 最終ジャッジ日時 | 2024-10-01 00:23:06 | 
| 合計ジャッジ時間 | 5,722 ms | 
| ジャッジサーバーID (参考情報) | judge1 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 2 | 
| other | AC * 32 | 
ソースコード
#include "bits/stdc++.h"
#include "atcoder/all"
using namespace std;
using ll=long long;
int main(){
	int n,m;
	cin>>n>>m;
	atcoder::mf_graph<ll>g(n+m+2);
	for(int i=0;i<n;i++){
		int a;
		cin>>a;
		g.add_edge(n+m,i,a);
	}
	ll sum=0;
	vector<int>b(m);
	for(int i=0;i<m;i++){
		cin>>b[i];
		g.add_edge(i+n,n+m+1,b[i]);
		sum+=b[i];
	}
	for(int i=0;i<m;i++){
		int k;
		cin>>k;
		for(int j=0;j<k;j++){
			int c;
			cin>>c;
			g.add_edge(c-1,n+i,1e18);
		}
	}
	cout<<sum-g.flow(n+m,n+m+1)<<endl;
}
            
            
            
        