結果
問題 |
No.386 貪欲な領主
|
ユーザー |
|
提出日時 | 2016-07-02 00:18:48 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 894 bytes |
コンパイル時間 | 1,676 ms |
コンパイル使用メモリ | 169,536 KB |
実行使用メモリ | 814,720 KB |
最終ジャッジ日時 | 2024-10-12 19:34:01 |
合計ジャッジ時間 | 3,924 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 1 WA * 3 MLE * 1 -- * 11 |
ソースコード
#include <bits/stdc++.h> using namespace std; typedef long long ll; int n,a,b,u,m,ma,mb,mc; vector<vector<int>> vn; vector<int> vc; int f(int ma, int mb, int x, vector<vector<int>> fn){ vector<vector<int>> bn; bn=fn; if(ma==mb){ return x; } int y; y=0; int z; z=0; for(int i=0; i<n; ++i){ if(bn[ma][i]==1){ bn[ma][i]=0; bn[i][ma]=0; x+=vc[i]; y+=f(i,mb,x,bn); } } return y; } int main(){ cin>>n; vn.resize(n); for(int i=0; i<n; ++i){ vn[i].resize(n); for(int j=0; j<n; ++j){ vn[i][j]=0; } } for(int i=0; i<n-1; ++i){ cin>>a>>b; vn[a][b]=1; vn[b][a]=1; } vc.resize(n); for(int i=0; i<n; ++i){ cin>>u; vc[i]=u; } cin>>m; int x,y; y=0; for(int i=0; i<m; ++i){ cin>>ma>>mb>>mc; x=vc[ma]; x=f(ma,mb,x,vn); x*=mc; y+=x; } cout<<y<<endl; return 0; }