Submission #2385291


Source Code Expand

#include<bits/stdc++.h>
using namespace std;
#define all(vec) vec.begin(),vec.end()
typedef long long int ll;
typedef pair<ll,ll> P;
const ll MOD=10000;
const ll INF=1000000010;
const ll LINF=1000000000000000010;
const int MAX=100001;
int dx[8]={0,1,0,-1,1,-1,1,-1};
int dy[8]={1,0,-1,0,1,-1,-1,1};
vector<P> G[3010];
int main(){
    int n,m,r,t;
    cin>>n>>m>>r>>t;
    for(int i=0;i<m;i++){
        int a,b,c;cin>>a>>b>>c;
        a--;b--;
        G[a].push_back({b,c});
        G[b].push_back({a,c});
    }
    ll ans=0;
    for(int i=0;i<n;i++){
        vector<int> v1(n,INF);
        vector<int> v2(n,INF);
        priority_queue<P,vector<P>,greater<P> > q;
        q.push(P(0,i));
        v1[i]=0;
        while(!q.empty()){
            P p=q.top();q.pop();
            for(auto e:G[p.second]){
                if(e.second+p.first>=v1[e.first])continue;
                v1[e.first]=e.second+p.first;
                q.push(P(v1[e.first],e.first));
            }
        }
        v2=v1;
        for(int j=0;j<n;j++){
            v1[j]*=t;
            v2[j]*=r;
        }
        if(t>r){
            ans-=n-1;
        }
        sort(v2.begin(),v2.end());
        for(int j=0;j<n;j++){
            if(i==j)continue;
            ll p=upper_bound(v2.begin(),v2.end(),v1[j]-1)-v2.begin();
            ans+=p-1;
        }
    }
    cout<<ans<<endl;
	return 0;
}

Submission Info

Submission Time
Task C - ウサギとカメ
User TAISA_
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1416 Byte
Status AC
Exec Time 1290 ms
Memory 512 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 2
AC × 18
Set Name Test Cases
Sample subtask0_sample-01.txt, subtask0_sample-02.txt
All subtask0_sample-01.txt, subtask0_sample-02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt
Case Name Status Exec Time Memory
subtask0_sample-01.txt AC 1 ms 256 KB
subtask0_sample-02.txt AC 1 ms 256 KB
subtask1_01.txt AC 1 ms 256 KB
subtask1_02.txt AC 1 ms 256 KB
subtask1_03.txt AC 1 ms 256 KB
subtask1_04.txt AC 1 ms 256 KB
subtask1_05.txt AC 6 ms 384 KB
subtask1_06.txt AC 9 ms 384 KB
subtask1_07.txt AC 32 ms 512 KB
subtask1_08.txt AC 38 ms 384 KB
subtask1_09.txt AC 321 ms 512 KB
subtask1_10.txt AC 324 ms 384 KB
subtask1_11.txt AC 136 ms 512 KB
subtask1_12.txt AC 1225 ms 512 KB
subtask1_13.txt AC 1220 ms 512 KB
subtask1_14.txt AC 1246 ms 512 KB
subtask1_15.txt AC 749 ms 512 KB
subtask1_16.txt AC 1290 ms 512 KB