关注
附加题用全排列暴力做出来了。。。
void Swap(int &a, int &b)
{
int temp = a;
a = b;
b = temp;
}
void Permutation(vector<int> &vec, int start, int end, vector<vector<int>> &vecBig)
{
if(start == end)
{
vecBig.push_back(vec);
}
else
{
for(int i = start; i<= end; ++i)
{
Swap(vec[i], vec[start]);
Permutation(vec, start+1, end, vecBig);
Swap(vec[i], vec[start]);
}
}
}
int main()
{
int n;
cin>>n;
vector<vector<int>> vecBig;
for(int i = 0; i<=n; ++i)
{
vector<int> vecTemp;
string str;
getline(cin, str);
for(int j = 0; j< str.size(); ++j)
{
if(str[j] == ',')
str[j] = ' ';
}
istringstream ss(str);
int num;
while(ss>>num)
{
vecTemp.push_back(num);
}
if(i!= 0)
{
vecBig.push_back(vecTemp);
}
}
vector<int> vect;
for(int i = 0; i< n; ++i)
{
vect.push_back(i);
}
vector<vector<int>> vec;
Permutation(vect, 0, n-1, vec);
int min = 99999;
for(int i = 0; i< vec.size(); ++i)
{
int curMid = 0;
vector<int> vect = vec[i];
int pre = vect[0];
for(int j = 1; j<vect.size(); ++j)
{
int cur = vect[j];
curMid +=vecBig[pre][cur];
pre = cur;
}
if(curMid<min)
min = curMid;
}
cout<<min<<endl;
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 评论 收藏
分享
07-02 13:36
门头沟学院 Java 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 你觉得实习能学到东西吗 #
30868次浏览 632人参与
# 机械人集合!你是什么工程师? #
15308次浏览 88人参与
# 现代汽车前瞻技术研发急速编程挑战赛 #
25947次浏览 211人参与
# 秋招什么时候开投比较合适? #
19000次浏览 274人参与
# 发工资后,你做的第一件事是什么 #
67554次浏览 229人参与
# 如何准备秋招 #
18058次浏览 348人参与
# 百度工作体验 #
219205次浏览 1957人参与
# 机械人与华为的爱恨情仇 #
116197次浏览 942人参与
# 工作中哪个瞬间让你想离职 #
25434次浏览 177人参与
# 硬件应届生薪资是否普遍偏低? #
73580次浏览 514人参与
# 不考虑转正,实习多久合适 #
31567次浏览 145人参与
# 影石Insta360求职进展汇总 #
123124次浏览 1069人参与
# 通信和硬件还有转码的必要吗 #
57249次浏览 526人参与
# 24届的你们都什么时候入职? #
59956次浏览 424人参与
# 面试被问期望薪资时该如何回答 #
255974次浏览 1479人参与
# 实习,不懂就问 #
41827次浏览 643人参与
# 你们公司几号发工资 #
20524次浏览 139人参与
# 软开人,秋招你打算投哪些公司呢 #
102425次浏览 958人参与
# 每个月的工资都是怎么分配的? #
25036次浏览 408人参与
# 如果你有一天可以担任公司的CEO,你会做哪三件事? #
28977次浏览 460人参与
# 你觉得现在还能进互联网吗? #
7456次浏览 130人参与