遇到一道笔试题,笔试的时候没有解出来,大概记了下题目,后面花时间解出来,但没有环境,只通过了demo。
题目大概是这样的:
题目描述:小明要从家里去看奥运会,中途要换乘公交车,有很多条路线,不同路线花费不同时间,要求找一条能到达终点的乘车路线,且花费的时间最少。
输入:第一行输入终点所在的站m(假设起点为0,m为一个自然数)和可供选择的路线的条数n
接下来为n行,每行的内容为一条路线的起点所在的站,终点所在的站,以及花费的时间。
输出:最少花费的时间(好像数据都有解)。
示例:
6 5
0 2 5
1 4 3
2 6 4
4 6 1
2 4 3
思路:我笔试的时候知道是动态规划,但是心虚感觉不够时间去做,因为自己不是很熟练,后面花点时间,用动规解出来了
#include
using namespace std;
int m,n;
int mintime=0;
vector start,end,cost;
int getmintime(int m,vector start,vector end,vector cost){
if(m==0){
return 0;
}
vector tmp;
for(int i=0;i>m>>n;
for(int i=0;i>t;
start.push_back(t);
cin>>t;
end.push_back(t);
cin>>t;
cost.push_back(t);
}
cout<
代码风格不是很严谨,有不当之处,欢迎指出来~