Submission #111516

# Submission time Handle Problem Language Result Execution time Memory
111516 2019-05-15T13:48:06 Z Segtree Travelling Merchant (APIO17_merchant) C++14
0 / 100
81 ms 2168 KB
#include<iostream>
#include<algorithm>
using namespace std;
typedef long long ll;
typedef long double ld;
#define chmax(a,b) a=max(a,b);
#define chmin(a,b) a=min(a,b);
#define N 110
#define K 1010
ll n,m,k,d[N][N],v[N][N];
ll s[N][K],b[N][K];
void wf(){
    for(int r=1;r<=n;r++){
	for(int i=1;i<=n;i++)for(int j=1;j<=n;j++){
	    d[i][j]=min(d[i][j],d[i][r]+d[r][j]);
	}
    }
}

int main(){
    cin>>n>>m>>k;
    for(int i=1;i<=n;i++)for(int j=1;j<=n;j++){
	d[i][j]=1e17;
    }
    for(int i=1;i<=n;i++){
	for(int j=0;j<k;j++){
	    cin>>b[i][j]>>s[i][j];
	    d[i][i]=0;
	}
    } 
    for(int i=0;i<m;i++){
	ll x,y,z;cin>>x>>y>>z;
	d[x][y]=z;
    }
    wf();
    /*
    for(int i=1;i<=n;i++){
	cout<<i<<":";
	for(int j=1;j<=n;j++)cout<<d[i][j]<<" ";
	cout<<endl;
    }*/
    for(int r=1;r<=n;r++){
	for(int i=1;i<=n;i++){
	    ll ma=0;
	    for(int j=0;j<k;j++){
		if(~s[i][j]&&~b[r][j])ma=max(ma,s[i][j]-b[r][j]);
	    }
	    v[r][i]=ma;
	}
    }
    ll ans=0;
    for(int i=2;i<=n;i++){
	ans=min(ans,v[1][i]/(d[1][i]+d[i][1]));
    }
    cout<<ans<<endl;
    return 0;
}
# Verdict Execution time Memory Grader output
1 Incorrect 81 ms 2168 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 768 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 13 ms 1408 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 768 KB Output isn't correct
2 Halted 0 ms 0 KB -