比赛 |
2025暑期集训第5场图论专场 |
评测结果 |
AMMMMMMMMM |
题目名称 |
Milk Pumping |
最终得分 |
10 |
用户昵称 |
汐汐很希希 |
运行时间 |
2.677 s |
代码语言 |
C++ |
内存使用 |
233.88 MiB |
提交时间 |
2025-07-09 09:23:47 |
显示代码纯文本
#include<bits/stdc++.h>
#define ll long long
using namespace std;
const int N=1e3+10,INF=0x3f3f3f3f;
int n,m;
vector<int> g[N];
vector<int> e[N];
vector<int> ef[N];
double ans=-9.9;
void dfs(int x,int end,int fm,int sum,int fa)
{
if(x==end){
double t=(fm*1.0)/(sum*1.0);
ans=max(ans,t);
return;
}
if(g[x].size()==1&&fa) return;
for(int i=0;i<g[x].size();i++)
{
int y=g[x][i];
if(y==fa) continue;
fm=min(fm,ef[x][i]);
sum+=e[x][i];
dfs(y,end,fm,sum,x);
}
}
int main()
{
freopen("pump.in","r",stdin);
freopen("pump.out","w",stdout);
cin>>n>>m;
for(int i=1;i<=m;i++)
{
int x,y,w,f;
cin>>x>>y>>w>>f;
g[x].push_back(y),e[x].push_back(w),ef[x].push_back(f);
g[y].push_back(x),e[y].push_back(w),ef[y].push_back(f);
}
dfs(1,n,INF,0,0);
ans=ans*1000000.0;
printf("%.0f",ans);
return 0;
}