Submission #1070311
Source Code Expand
#include <iostream> #include <vector> #include <algorithm> #include <queue> #define INF (1<<30) using namespace std; struct Edge { int a, b, cost; Edge() {} Edge(int a, int b, int cost) :a(a), b(b), cost(cost) {} bool operator < (Edge& o) const{ return cost < o.cost; } }; int main() { cin.tie(0); ios::sync_with_stdio(false); int N, M; cin >> N >> M; vector<vector<Edge>> G(N + 1); vector<Edge> e(N + 1); vector<vector<int>> dist(N + 1, vector<int>(N + 1, INF)); // initialize for (int i = 0; i < M;i++) { int a, b, c; cin >> a >> b >> c; G[a].emplace_back(Edge(a, b, c)); G[b].emplace_back(Edge(b, a, c)); e[i] = Edge(a, b, c); } // dist[i][j] = i-j間の最短距離 for (int i = 1; i <= N; i++) { queue<int> q; dist[i][i] = 0; q.push(i); while (!q.empty()) { int n = q.front(); q.pop(); for (auto o : G[n]) { int next = o.b; if (dist[i][n] + o.cost < dist[i][next]) { dist[i][next] = dist[i][n] + o.cost; q.push(next); } } } } int ans = M; for (int i = 0; i < M; i++) { bool f = false; for (int j = 1; j <= N; j++) { if (dist[j][e[i].a] + e[i].cost == dist[j][e[i].b]) f = true; } if (f) ans--; } cout << ans << endl; }
Submission Info
Submission Time | |
---|---|
Task | D - Candidates of No Shortest Paths |
User | clavis1107 |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 1266 Byte |
Status | RE |
Exec Time | 120 ms |
Memory | 256 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 |
All | subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.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_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_28.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 3 ms | 256 KB |
sample_02.txt | AC | 3 ms | 256 KB |
subtask_1_01.txt | AC | 3 ms | 256 KB |
subtask_1_02.txt | AC | 3 ms | 256 KB |
subtask_1_03.txt | RE | 116 ms | 256 KB |
subtask_1_04.txt | AC | 3 ms | 256 KB |
subtask_1_05.txt | RE | 116 ms | 256 KB |
subtask_1_06.txt | RE | 116 ms | 256 KB |
subtask_1_07.txt | AC | 3 ms | 256 KB |
subtask_1_08.txt | RE | 116 ms | 256 KB |
subtask_1_09.txt | AC | 3 ms | 256 KB |
subtask_1_10.txt | RE | 120 ms | 256 KB |
subtask_1_11.txt | RE | 116 ms | 256 KB |
subtask_1_12.txt | AC | 3 ms | 256 KB |
subtask_1_13.txt | AC | 3 ms | 256 KB |
subtask_1_14.txt | RE | 116 ms | 256 KB |
subtask_1_15.txt | AC | 3 ms | 256 KB |
subtask_1_16.txt | RE | 115 ms | 256 KB |
subtask_1_17.txt | RE | 116 ms | 256 KB |
subtask_1_18.txt | RE | 116 ms | 256 KB |
subtask_1_19.txt | RE | 116 ms | 256 KB |
subtask_1_20.txt | RE | 115 ms | 256 KB |
subtask_1_21.txt | RE | 116 ms | 256 KB |
subtask_1_22.txt | RE | 115 ms | 256 KB |
subtask_1_23.txt | RE | 116 ms | 256 KB |
subtask_1_24.txt | RE | 116 ms | 256 KB |
subtask_1_25.txt | RE | 115 ms | 256 KB |
subtask_1_26.txt | RE | 115 ms | 256 KB |
subtask_1_27.txt | RE | 115 ms | 256 KB |
subtask_1_28.txt | RE | 116 ms | 256 KB |