关注
全排列一个个试,毫无算法。。。复杂度贼高。。
#include<iostream>
#include <string>
using namespace std;
int book[100], num=4, cou=1;
char *word[4] = { "ab","bc","cd","bf" };
bool dfs(int num, char ** arr,char tail)
{
if (cou == num )
return true;
for (int i = 0; i < num; ++i)//一个个当首单词
{
if (book[i] == 0 && arr[i][0] == tail)
{
book[i] = 1;
cou++;
if (dfs(num, arr, arr[i][strlen(arr[i]) - 1]))
return true;
book[i] = 0;
cou--;
}
}
return false;
}
int canArrangeWords(int num, char ** arr)
{
if (num == 1)
return 1;
for (int i = 0; i < num; ++i)//一个个当首单词
{
book[i] = 1;
bool zq=dfs(num,arr,arr[i][strlen(arr[i])-1]);
book[i] = 0;
cou = 1;//链子里只有第一个单词了
if (zq)
return 1;
}
return -1;
}
int main()
{
int res = canArrangeWords(num, word);
cout << res << endl;
system("pause");
return 0;
}
查看原帖
点赞 评论
相关推荐
代码飞升:牛肉哥我现在27届一段安克创新一段理想汽车实习,我担心这样的实习经历不够让我约面,如果按你说的我大概实习六个月明年四月离职找暑期,这样安排合理吗

点赞 评论 收藏
分享
10-16 15:02
重庆大学 C++ 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 你的mentor是什么样的人? #
5871次浏览 52人参与
# 26届秋招公司红黑榜 #
16350次浏览 55人参与
# 未岚大陆求职进展汇总 #
38390次浏览 117人参与
# 怎么给家人解释你的工作? #
2802次浏览 37人参与
# 你觉得mentor喜欢什么样的实习生 #
12022次浏览 323人参与
# 帮我看看,领导说这话什么意思? #
8377次浏览 38人参与
# 智慧芽求职进展汇总 #
28644次浏览 119人参与
# 实习必须要去大厂吗? #
147638次浏览 1548人参与
# 你觉得多少薪资算SSP? #
112878次浏览 415人参与
# 求职低谷期你是怎么度过的 #
6454次浏览 125人参与
# 度小满求职进展汇总 #
10651次浏览 57人参与
# 校招泡的最久的公司是哪家? #
5939次浏览 29人参与
# 你遇到过哪些神仙同事 #
117447次浏览 750人参与
# 同bg的你秋招战况如何? #
159004次浏览 927人参与
# 没有家庭托举的我是怎么找工作的 #
14378次浏览 179人参与
# 从哪些方向判断这个offer值不值得去? #
7734次浏览 102人参与
# 牛客树洞,我想对你说 #
1796次浏览 35人参与
# 你觉得面试是靠实力还是靠运气 #
23454次浏览 278人参与
# 面试紧张时你会有什么表现? #
2082次浏览 23人参与
# 职场新人体验 #
99591次浏览 658人参与
# 扒一扒那些奇葩实习经历 #
118701次浏览 1065人参与
# 应届生应该先就业还是先择业 #
142776次浏览 733人参与