Submission #1281238


Source Code Expand

#include <bits/stdc++.h>

using namespace std;

typedef long long int64;

using Weight = int64;
using Flow = int64;

struct Edge
{
  int src, dst;
  Weight weight;
  Flow cap;

  Edge() : src(0), dst(0), weight(0) {}

  Edge(int s, int d, Weight w) : src(s), dst(d), weight(w) {}
};

using Edges = std::vector< Edge >;
using Graph = std::vector< Edges >;
using Array = std::vector< Weight >;
using Matrix = std::vector< Array >;

void add_edge(Graph &g, int a, int b, Weight w = 1)
{
  g[a].emplace_back(a, b, w);
  g[b].emplace_back(b, a, w);
}

void add_arc(Graph &g, int a, int b, Weight w = 1) { g[a].emplace_back(a, b, w); }

void bellmanFord(const Graph &g, int s)
{
  int n = g.size();
  const Weight inf = std::numeric_limits< Weight >::max() / 8;
  Edges es;
  for(int i = 0; i < n; i++)
    for(auto &e : g[i]) es.emplace_back(e);
  std::vector< Weight > dist(n, -inf);
  dist[s] = 0;
  for(int i = 0; i <= 2 * n; i++) {
    for(auto &e : es) {
      if(dist[e.src] != inf && dist[e.dst] < dist[e.src] + e.weight) {
        if(i > n && e.dst == g.size() - 1) {
          cout << "inf" << endl;
          return;
        }
        dist[e.dst] = dist[e.src] + e.weight;
      }
    }
  }
  cout << dist[g.size() - 1] << endl;
}

int main()
{
  int N, M;
  cin >> N >> M;
  Graph g(N);
  for(int i = 0; i < M; i++) {
    int a, b, c;
    cin >> a >> b >> c;
    --a, --b;
    add_arc(g, a, b, c);
  }
  bellmanFord(g, 0);

}

Submission Info

Submission Time
Task D - Score Attack
User ei13333
Language C++14 (GCC 5.4.1)
Score 400
Code Size 1500 Byte
Status AC
Exec Time 11 ms
Memory 384 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 400 / 400
Status
AC × 3
AC × 30
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 384 KB
subtask_1_13.txt AC 1 ms 256 KB
subtask_1_14.txt AC 5 ms 384 KB
subtask_1_15.txt AC 11 ms 384 KB
subtask_1_16.txt AC 1 ms 256 KB
subtask_1_17.txt AC 1 ms 256 KB
subtask_1_18.txt AC 4 ms 384 KB
subtask_1_19.txt AC 6 ms 384 KB
subtask_1_2.txt AC 4 ms 384 KB
subtask_1_20.txt AC 1 ms 256 KB
subtask_1_21.txt AC 4 ms 384 KB
subtask_1_22.txt AC 8 ms 384 KB
subtask_1_23.txt AC 1 ms 256 KB
subtask_1_24.txt AC 5 ms 384 KB
subtask_1_25.txt AC 3 ms 384 KB
subtask_1_26.txt AC 4 ms 384 KB
subtask_1_27.txt AC 5 ms 384 KB
subtask_1_3.txt AC 3 ms 384 KB
subtask_1_4.txt AC 4 ms 384 KB
subtask_1_5.txt AC 2 ms 256 KB
subtask_1_6.txt AC 4 ms 384 KB
subtask_1_7.txt AC 4 ms 384 KB
subtask_1_8.txt AC 4 ms 384 KB
subtask_1_9.txt AC 1 ms 256 KB