国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

1053. Path of Equal Weight (30)

2019-11-14 11:47:04
字體:
來源:轉載
供稿:網友

1053. Path of Equal Weight (30) 考察DFS

#include <iostream>#include <vector>#include <string>#include <algorithm>using namespace std;vector<vector<int>> path(1000);vector<vector<int>> v(200);vector<int> cur;int n,m,s,w[120];int cntw=0;bool comp(vector<int> &a,vector<int> &b){ auto ita=a.begin(); auto itb=b.begin(); while(ita!=a.end()&&itb!=b.end()&&(*ita)==(*itb)) { ++ita;++itb; } if(ita!=a.end()&&itb!=b.end()) return (*ita)>=(*itb); if(ita==a.end()&&itb!=b.end()) return false; else if(itb==b.end()&&ita!=a.end()) return true; else if(ita==a.end()&&itb!=b.end()) return true;}void DFS(int u){ cur.push_back(w[u]); cntw+=w[u]; if(!v[u].size()) { if(cntw==s) path.push_back(cur); //cout<<cntw<<endl; return; } for(auto it=v[u].begin();it!=v[u].end();++it) { DFS(*it); cntw-=cur.back(); cur.pop_back(); }}int main(){ cin>>n>>m>>s; for(int i=0;i!=n;++i) cin>>w[i]; for(int i=0;i!=m;++i) { int curid,temp,k; cin>>curid>>k; while(k--) { cin>>temp; v[curid].push_back(temp); } } DFS(0); sort(path.begin(),path.end(),comp); for(int i=0;i!=(int)path.size();++i) { for(auto it=path[i].begin();it!=path[i].end();++it) (it==path[i].end()-1)?cout<<*it<<endl:cout<<*it<<" "; } return 0;}
上一篇:棋盤問題 dfs

下一篇:struts2值棧分析

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 喀什市| 临桂县| 建始县| 盐山县| 浦城县| 锡林浩特市| 乌审旗| 平遥县| 栾城县| 伊川县| 临汾市| 习水县| 鄂州市| 芒康县| 宕昌县| 旌德县| 上犹县| 苏州市| 九江市| 尼木县| 苍梧县| 仙游县| 石家庄市| 达日县| 四平市| 黎平县| 都兰县| 琼海市| 浮梁县| 汉源县| 遵义县| 白玉县| 石阡县| 瓮安县| 府谷县| 郁南县| 溧水县| 勐海县| 上思县| 边坝县| 盐池县|