CCFCSP认证201703-4地铁修建只有50分,求助大佬

时间:2023-02-02 21:35:05
这是我用贪心法写的代码,先把边按权值排序,从小到大一直添加到1和n联通,提交了只有50分,实在不知道哪里错了,不知道该怎么设计测试数据找错误,有没有大佬帮帮忙呀

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
const int maxnum=200000+10;
int p[maxnum]= {0};
int n,line;
int ans=0;
struct Edge
{
int v;
int to;
int cost;
};
vector<Edge> myLine;
int cmp( const Edge &a ,const Edge &b)
{
return a.cost>b.cost;//
}
void init()
{
while(line--)
{
Edge e;
cin>>e.v>>e.to>>e.cost;
myLine.push_back(e);
}
}
void test()
{
cout<<"~~~~~~~~~~~~~~~~~"<<endl;
for(int i=0; i<=myLine.size()-1; i++)
cout<<myLine[i].v<<' '<<myLine[i].to<<' '<<myLine[i].cost<<endl;
}
int main()
{
cin>>n>>line;
init();
//test();
sort(myLine.begin(),myLine.end(),cmp);
while(line--)
{
//test();
Edge tmp;
if(p[1]==1&&p[n]==1)
{
cout<<tmp.cost;
break;
}
tmp=myLine[myLine.size()-1];
p[tmp.to]=1;
p[tmp.v]=1;
myLine.pop_back();
}
return 0;
}

2 个解决方案

#1


边界条件
输入输出格式
……

#2


引用 1 楼 zhao4zhong1 的回复:
边界条件
输入输出格式
……

边界和格式都没问题 真的不知道哪错了呀 
http://118.190.20.162/view.page?gpid=T54
这是题目链接 拜托大佬能花5分钟帮我看下不

#1


边界条件
输入输出格式
……

#2


引用 1 楼 zhao4zhong1 的回复:
边界条件
输入输出格式
……

边界和格式都没问题 真的不知道哪错了呀 
http://118.190.20.162/view.page?gpid=T54
这是题目链接 拜托大佬能花5分钟帮我看下不