Submission #1608962
Source Code Expand
using System; using System.Collections.Generic; using System.Linq; using System.IO; using static System.Console; using Pair = System.Collections.Generic.KeyValuePair<int, int>; //using System.Numerics; //using static System.Math; class Program { static void Main() { //SetOut(new StreamWriter(OpenStandardOutput()) { AutoFlush = false }); new Program().solve(); Out.Flush(); } Scanner cin = new Scanner(); readonly int[] dd = { 0, 1, 0, -1, 0 }; readonly int mod = 1000000007; readonly string alfa = "abcdefghijklmnopqrstuvwxyz"; readonly string ALFA = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; int N, M; void solve() { N = cin.nextint; M = cin.nextint; input(M); var flag = find_negative_loop(N, M, 0); WriteLine(flag ? "inf" : $"{-D[N - 1]}"); } struct Edge { public int from, to; public long cost; public Edge(int from, int to, long cost) { this.from = from; this.to = to; this.cost = cost; } } Edge[] G; long[] D; const long inf = long.MaxValue / 3; void input(int m) { G = new Edge[m]; for (int i = 0; i < m; i++) { int a = cin.nextint - 1; int b = cin.nextint - 1; long c = -cin.nextlong; G[i] = new Edge(a, b, c); } } bool find_negative_loop(int n, int m, int s) { D = Enumerable.Repeat(inf, n).ToArray(); D[s] = 0; for (int i = 0; i < n; i++) { foreach (var e in G) { if (D[e.to] > D[e.from] + e.cost) { D[e.to] = D[e.from] + e.cost; // n回目にも更新があるなら負の閉路が存在する if (i == n - 1) return true; } } } return false; } } class Scanner { string[] s; int i; char[] cs = new char[] { ' ' }; public Scanner() { s = new string[0]; i = 0; } public string[] scan { get { return ReadLine().Split(); } } public int[] scanint { get { return Array.ConvertAll(scan, int.Parse); } } public long[] scanlong { get { return Array.ConvertAll(scan, long.Parse); } } public double[] scandouble { get { return Array.ConvertAll(scan, double.Parse); } } public string next { get { if (i < s.Length) return s[i++]; string st = ReadLine(); while (st == "") st = ReadLine(); s = st.Split(cs, StringSplitOptions.RemoveEmptyEntries); i = 0; return next; } } public int nextint { get { return int.Parse(next); } } public long nextlong { get { return long.Parse(next); } } public double nextdouble { get { return double.Parse(next); } } }
Submission Info
Submission Time | |
---|---|
Task | D - Score Attack |
User | claw88 |
Language | C# (Mono 4.6.2.0) |
Score | 0 |
Code Size | 2991 Byte |
Status | WA |
Exec Time | 36 ms |
Memory | 13356 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 | 29 ms | 11476 KB |
sample_02.txt | AC | 23 ms | 9172 KB |
sample_03.txt | AC | 24 ms | 11220 KB |
subtask_1_1.txt | AC | 26 ms | 11220 KB |
subtask_1_10.txt | AC | 24 ms | 13268 KB |
subtask_1_11.txt | AC | 25 ms | 11220 KB |
subtask_1_12.txt | AC | 30 ms | 9256 KB |
subtask_1_13.txt | AC | 24 ms | 11320 KB |
subtask_1_14.txt | AC | 30 ms | 11304 KB |
subtask_1_15.txt | AC | 36 ms | 11288 KB |
subtask_1_16.txt | AC | 24 ms | 13268 KB |
subtask_1_17.txt | AC | 24 ms | 11220 KB |
subtask_1_18.txt | AC | 28 ms | 13356 KB |
subtask_1_19.txt | AC | 30 ms | 11304 KB |
subtask_1_2.txt | AC | 29 ms | 13352 KB |
subtask_1_20.txt | AC | 24 ms | 11320 KB |
subtask_1_21.txt | AC | 27 ms | 11304 KB |
subtask_1_22.txt | AC | 33 ms | 9240 KB |
subtask_1_23.txt | WA | 23 ms | 11220 KB |
subtask_1_24.txt | AC | 29 ms | 11304 KB |
subtask_1_25.txt | WA | 26 ms | 11200 KB |
subtask_1_26.txt | AC | 28 ms | 9256 KB |
subtask_1_27.txt | WA | 29 ms | 9256 KB |
subtask_1_3.txt | AC | 26 ms | 11312 KB |
subtask_1_4.txt | AC | 28 ms | 9256 KB |
subtask_1_5.txt | AC | 26 ms | 11188 KB |
subtask_1_6.txt | AC | 30 ms | 11304 KB |
subtask_1_7.txt | AC | 27 ms | 9264 KB |
subtask_1_8.txt | AC | 29 ms | 11304 KB |
subtask_1_9.txt | AC | 23 ms | 9172 KB |