关注
附加题用全排列暴力做出来了。。。
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;
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
正在热议
# 拼多多求职进展汇总 #
237094次浏览 2039人参与
# 机械求职避坑tips #
23572次浏览 249人参与
# 北方华创开奖 #
67004次浏览 552人参与
# 25届秋招总结 #
409721次浏览 4113人参与
# 25届机械人为了秋招做了哪些准备? #
26232次浏览 363人参与
# 地方国企笔面经互助 #
6913次浏览 17人参与
# 阿里云管培生offer #
62315次浏览 1759人参与
# ai智能作图 #
28489次浏览 341人参与
# 虾皮求职进展汇总 #
90352次浏览 737人参与
# 实习,投递多份简历没人回复怎么办 #
2440297次浏览 34744人参与
# 软件开发投递记录 #
1481272次浏览 23947人参与
# 我的实习求职记录 #
6132046次浏览 84017人参与
# 我在牛爱网找对象 #
74783次浏览 554人参与
# 发工资后,你做的第一件事是什么 #
9023次浏览 42人参与
# 985本硕1个中小厂offer,摆烂or继续努力 #
83146次浏览 601人参与
# 机械人怎么评价今年的华为 #
157900次浏览 1352人参与
# 京东求职进展汇总 #
512810次浏览 4678人参与
# 如果可以,你希望哪个公司来捞你 #
33788次浏览 195人参与
# 你觉得通信/硬件有必要实习吗? #
54768次浏览 698人参与
# 歌尔求职进展汇总 #
42887次浏览 294人参与
# 在职场上,你最讨厌什么样的同事 #
6044次浏览 91人参与
# 如果再来一次,你还会选择这个工作吗? #
115424次浏览 1140人参与