vector<string>
2015-07-20 23:39
232 查看
给定vector<string> 判断是否是 可以首尾相连成一个环,相邻两个串的头和尾字符一样
class Solution{ public: int n; vector<int> v; vector<string> vs_; unordered_map<char, vector<int>> um; bool Circle(vector<string> vs){ int save=0; for(int i=0;i<vs.size();i++){ if(vs[i]!="") vs[save++]=vs[i]; } vs.resize(save); vs_=vs; um.clear(); n=vs.size(); for(int i=0;i<n;i++){ um[vs[i][0]].push_back(i); } v.assign(n, 0); //int start=0, cnt=1;; //int index=0; return dfs(0, 0); //return v[index].back()==v[start][0]; } bool dfs(int now, int i){ if(!um.count(vs_[i].back())) return 0; if(now>=n && i==0) return 1; for(auto e: um[vs_[i].back()]){ int index=e; if(v[index]) continue; v[index]=1; if(dfs(now+1, index)) return 1; v[index]=0; } return 0; } } S;
相关文章推荐
- 如何将一个Activity设置成窗口的样式
- 张珺 2015/07/17 个人文档
- 看opengl写代码(8) 使用缓冲区
- Android NDK环境配置
- ssd 应用场景
- HDU -- 3667 Transportation(最小费用最大流 )
- poj 3177 Redundant Paths 【无向图增加最少的边是图成为边—双连通】【tarjan求EBC + 缩点 统计度数为1的EBC】
- 【整理】--【字符设备】cdev_init()/cdev_alloc(),cdev_add(),cdev_del()
- 李陈铖求职安卓开发工程师简历20150720
- java-面向对象之继承(感言:经过第一天和Java中类的继承和接口的实现的接触,自己需要学习的还很多,还要从基础抓起,尽管有点迷糊,但学到很多很喜欢这种时光!加油!)下面是查到的相关资料以备查看。
- CentOS安装配置Samba
- CV数据集
- Gas Station
- Java正则表达式实例详解
- MySQL字符串连接
- android studio配置jdk和adb的问题
- Javascript正则构造函数与正则表达字面量&&常用正则表达式
- Linux系统部署项目常用命令(一)
- Kettle实现文本文件数据抽取方法 Kettle Txt To Database
- java基础之其他类