求助改代码呀
  • 板块P2648 赚钱
  • 楼主_Empty
  • 当前回复0
  • 已保存回复0
  • 发布时间2021/1/7 20:19
  • 上次更新2023/11/5 05:03:34
查看原帖
求助改代码呀
379940
_Empty楼主2021/1/7 20:19

废掉了,10pt

#include<bits/stdc++.h>
using namespace std;
int qq,pp,cc,ff,uu[5000],sth[500],sto[500],as;
bool edda[500];
struct node{
	int u,v,w;
}e[5000];
void d3(int u,int v,int w){
	e[as++].u=v,e[as].v=w,e[as].w=sto[u],sto[u]=as;
}
bool d2()
{
	queue<int>q;
	memset(uu,0x3f,sizeof(uu));
	q.push(1),uu[1]=true,edda[1]=false;
	while(!q.empty()){
		int u=q.front();
		q.pop(),edda[u]=0,sth[u]++;
		if(sth[u]>cc+1) return false;
		for(int i=sto[u];i;i=e[i].w){
			int v=e[i].u;
			if(uu[v]>uu[u]+e[i].v){
				uu[v]=uu[u]+e[i].v;
				if(!edda[v]) edda[v]=1,q.push(v);
			}
		}
	}
	return true;
}
int main()
{
	cin>>qq>>pp>>cc>>ff;
	int u,v,w;
	for(int i=1;i<=pp;i++)   cin>>u>>v,d3(u,v,-qq);
	for(int i=1;i<=ff;i++)   cin>>u>>v>>w,d3(u,v,-qq);
	for(int i=1;i<=cc;i++)   d3(0,i,-qq);
	if(d2())	cout<<"orz";
	else{
		int ans=0;
		for(int i=1;i<=cc;i++) ans=min(ans,uu[i]);
		cout<<-ans;
	} 	
	return 0;
}

求改代码

2021/1/7 20:19
加载中...