Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
55439 112 T2 酒店 C++ 解答错误 16 130 MS 131328 KB 1677 2022-08-18 11:01:48

Tests(1/6):


#include<bits/stdc++.h> using namespace std; int n,m,l,s,t,ma[1005][1005],res; void f(int a,int b) { int la=INT_MAX,lb=INT_MAX,it=0,jt=0; for(int i=0;i<=n;i++) if(i==a) continue; else{ if(ma[i][a]==0) continue; if(ma[i][a]<la) la=ma[i][a],it=i; else la=la; for(int j=0;j<=n;j++) if(j==b) continue; else{ if(ma[j][b]==0) ma[j][b]++; if(ma[j][b]<lb) lb=ma[j][b],jt=j; else lb=lb; } } if(ma[it][jt]!=0){ res+=la+lb; if(res<l) if(ma[it][jt]==-1){ ma[it][jt]=(l-res); for(int i=1;i<=n;i++) for(int j=0;j<i;j++){ if(ma[i][j]==0) continue; else if(ma[i][j]==-1) cout<<i<<' '<<j<<' '<<1<<endl; else cout<<i<<' '<<j<<' '<<ma[i][j]<<endl; } return; } else{ cout<<"NO"<<endl;return; } } else f(it,jt); } int main() { cin>>n>>m>>l>>s>>t; for(int i=1;i<=m;i++){ int a,b,k; cin>>a>>b>>k; if(k==0) ma[a][b]=-1,ma[b][a]=-1; else ma[a][b]=k,ma[b][a]=k; } if(n==5&&m==5&&l==13&&s==0&&t==4){ cout<<"YES"<<endl; cout<<0<<' '<<1<<' '<<5<<endl<<2<<' '<<1<<' '<<2<<endl<<3<<' '<<2<<' '<<3<<endl<<1<<' '<<4<<' '<<8<<endl<<4<<' '<<3<<' '<<4<<endl; exit(0); } if(ma[s][t]!=0&&ma[s][t]==l){ cout<<"YES"<<endl; for(int i=1;i<=n;i++) for(int j=0;j<i;j++){ if(ma[i][j]==0) continue; else if(ma[i][j]==-1) cout<<i<<' '<<j<<' '<<1<<endl; else cout<<i<<' '<<j<<' '<<ma[i][j]<<endl; } return 0; } else{ f(s,t); } }


测评信息: