Submission #1285911
Source Code Expand
#include<bits/stdc++.h> using namespace std; using ll = long long; using ld = long double; #define rep(i,n) for(int i=0;i<(int)(n);i++) #define reps(i,s,n) for(int i=(int)(s);i<(int)(n);i++) struct Edge { ll to, cost; // 辺の接続先頂点, 辺の重み Edge(ll to, ll cost) : to(to), cost(cost) {} // コンストラクタ }; typedef vector<vector<Edge> > AdjList; // 隣接リストの型 AdjList graph; // グラフの辺を格納した構造体 // graph[v][i]は頂点vから出るi番目の辺Edge const ll INF = 1000000000000000000; vector<ll> dist; // 戻り値がtrueなら負の閉路を含む bool bellman_ford(ll n, ll s) { // nは頂点数、sは開始頂点 dist = vector<ll>(n, INF); dist[s] = 0; // 開始点の距離は0 for (int i = 0; i < n; i++) { for (int v = 0; v < n; v++) { for (int k = 0; k < graph[v].size(); k++) { Edge e = graph[v][k]; if (dist[v] != INF && dist[e.to] > dist[v] + e.cost) { dist[e.to] = dist[v] + e.cost; if (i == n - 1) return true; // n回目にも更新があるなら負の閉路が存在 } } } } return false; } int main() { ll n, m; cin >> n >> m; graph = AdjList(n); for (int i = 0; i < m; i++) { ll from, to, cost; cin >> from >> to >> cost; graph[from - 1].push_back(Edge(to - 1, -cost)); } if (bellman_ford(n, 0)) { ll x = dist[n - 1]; for (int i = 0;i < n;i++) { bellman_ford(n, 0); } if (dist[n - 1] == x) { cout << "inf" << endl; return 0; } } cout << -dist[n - 1] << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - Score Attack |
User | agis |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 1599 Byte |
Status | WA |
Exec Time | 2103 ms |
Memory | 384 KB |
Judge Result
Set Name | Sample | All | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 400 | ||||||||
Status |
|
|
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 | 128 ms | 256 KB |
subtask_1_12.txt | AC | 1502 ms | 384 KB |
subtask_1_13.txt | AC | 3 ms | 256 KB |
subtask_1_14.txt | TLE | 2103 ms | 256 KB |
subtask_1_15.txt | TLE | 2103 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 | 256 KB |
subtask_1_19.txt | AC | 7 ms | 384 KB |
subtask_1_2.txt | AC | 4 ms | 256 KB |
subtask_1_20.txt | AC | 3 ms | 256 KB |
subtask_1_21.txt | AC | 4 ms | 256 KB |
subtask_1_22.txt | AC | 8 ms | 384 KB |
subtask_1_23.txt | WA | 1 ms | 256 KB |
subtask_1_24.txt | AC | 5 ms | 256 KB |
subtask_1_25.txt | WA | 327 ms | 256 KB |
subtask_1_26.txt | AC | 5 ms | 256 KB |
subtask_1_27.txt | TLE | 2103 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 | 503 ms | 256 KB |
subtask_1_6.txt | TLE | 2103 ms | 256 KB |
subtask_1_7.txt | AC | 3 ms | 256 KB |
subtask_1_8.txt | AC | 4 ms | 256 KB |
subtask_1_9.txt | AC | 1 ms | 256 KB |