#include #include #include #include #include std::map > tree; std::vector cost; int f(int oya,int p,int g,int sum){ if (p==g){ return sum+cost[p]; }else{ std::set::iterator it; for(it=tree[p].begin();it!=tree[p].end();it++){ int p2=(*it); int res=0; if (oya!=p2) { res=f(p,p2,g,sum+cost[p]); } if (res>0){ return res; } } } return 0; } int main() { // your code goes here int n,a,b; scanf("%d",&n); for(int i=0;i