Submission #2125872


Source Code Expand

#include <vector>
#include <iostream>
#include <utility>
#include <cassert>
using namespace std;


struct Edge {
    int from;
    int to;
    int cost;
};

const long long inf = 1e18;
long long n, m; 

bool has_neg_loop(long long n, const vector<Edge> &edges) {
    bool f = false;
    vector<long long> dist(n,inf);
    dist[0]=0;
    for (int i=0; i<n; i++) {
        for (auto e: edges) {
            if (dist[e.from] != inf && dist[e.to] > dist[e.from] + e.cost) {
                dist[e.to] = dist[e.from] + e.cost;
                if (i==n-1) f |= true;
            }
        }
    }
    return f;    
}

vector<long long> 
bellman_ford(vector<long long> &dist, const vector<Edge> &edges) {
    for (int i=0; i<n; i++) {
        for (auto e: edges) {
            if (dist[e.from] != inf && dist[e.to] > dist[e.from] + e.cost) {
                dist[e.to] = dist[e.from] + e.cost;
            }
        }
    }
    return dist;    
}

int main () {
    cin >> n >> m;
    vector<Edge> edges(m);
    for (auto &e: edges) {
        int f, t, c; cin >> f >> t >> c;
        e = {f-1, t-1, -c};
    }
    vector<long long> distance(n, inf);
    distance[0] = 0;

    distance = bellman_ford(distance, edges);
    assert(distance[n-1] != inf);
    if (has_neg_loop(n, edges)) {
        cout << "inf" << endl;
    } else {
        cout << -1*distance[n-1] << endl;
    }
}

Submission Info

Submission Time
Task D - Score Attack
User odan
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1436 Byte
Status WA
Exec Time 12 ms
Memory 256 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 400
Status
AC × 3
AC × 27
WA × 3
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_1.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt, subtask_1_18.txt, subtask_1_19.txt, subtask_1_2.txt, subtask_1_20.txt, subtask_1_21.txt, subtask_1_22.txt, subtask_1_23.txt, subtask_1_24.txt, subtask_1_25.txt, subtask_1_26.txt, subtask_1_27.txt, subtask_1_3.txt, subtask_1_4.txt, subtask_1_5.txt, subtask_1_6.txt, subtask_1_7.txt, subtask_1_8.txt, subtask_1_9.txt
Case Name Status Exec Time Memory
sample_01.txt AC 1 ms 256 KB
sample_02.txt AC 1 ms 256 KB
sample_03.txt AC 1 ms 256 KB
subtask_1_1.txt AC 2 ms 256 KB
subtask_1_10.txt AC 1 ms 256 KB
subtask_1_11.txt AC 2 ms 256 KB
subtask_1_12.txt AC 6 ms 256 KB
subtask_1_13.txt AC 1 ms 256 KB
subtask_1_14.txt AC 6 ms 256 KB
subtask_1_15.txt AC 9 ms 256 KB
subtask_1_16.txt AC 1 ms 256 KB
subtask_1_17.txt AC 1 ms 256 KB
subtask_1_18.txt AC 6 ms 256 KB
subtask_1_19.txt AC 5 ms 256 KB
subtask_1_2.txt AC 4 ms 256 KB
subtask_1_20.txt AC 1 ms 256 KB
subtask_1_21.txt AC 4 ms 256 KB
subtask_1_22.txt AC 12 ms 256 KB
subtask_1_23.txt WA 1 ms 256 KB
subtask_1_24.txt AC 6 ms 256 KB
subtask_1_25.txt WA 4 ms 256 KB
subtask_1_26.txt AC 4 ms 256 KB
subtask_1_27.txt WA 7 ms 256 KB
subtask_1_3.txt AC 3 ms 256 KB
subtask_1_4.txt AC 4 ms 256 KB
subtask_1_5.txt AC 3 ms 256 KB
subtask_1_6.txt AC 6 ms 256 KB
subtask_1_7.txt AC 4 ms 256 KB
subtask_1_8.txt AC 4 ms 256 KB
subtask_1_9.txt AC 1 ms 256 KB