Submission #1070687
Source Code Expand
#include <iostream> using namespace std; int main() { const int inf = 100000000; int n,m; cin >> n >> m; //入力データ用の変数 int a[1000],b[1000],c[1000]; //データの入力 for(int i = 0; i < m; ++i){ cin >> a[i] >> b[i] >> c[i]; a[i]--,b[i]--; //配列のインデックスと合わせるため } //アルゴリズム用の変数 int dist[100][100]; //アルゴリズム用の初期化1 for(int i = 0; i < n; ++i){ for(int j = 0; j < n; ++j){ if(i==j) dist[i][j]=0; else dist[i][j]=inf; } } //アルゴリズム用の初期化2(辺のある場合は更新) for(int i = 0; i < m; ++i){ dist[a[i]][b[i]]=min(dist[a[i]][b[i]],c[i]); dist[b[i]][a[i]]=min(dist[b[i]][a[i]],c[i]); } //ワーシャル・フロイド・アルゴリズム for(int k = 0; k < n; ++k){ for(int i = 0; i < n; ++i){ for(int j = 0; j < n; ++j){ dist[i][j]=min(dist[i][j],dist[i][k]+dist[k][j]); } } } //最短経路でない辺を数え上げ(最短経路辺のユニオンを数え上げ) int ans=m; for(int i = 0; i < m; ++i){ bool shortest=false; for(int j = 0; j < n; ++j){ for (int k = 0; k < n; ++k) { if(dist[j][a[i]]+c[i]+dist[b[i]][k]==dist[j][k]) shortest=true; } } if(shortest==true){ ans=ans-1; } } cout << ans << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - Candidates of No Shortest Paths |
User | cereus0saboten |
Language | C++14 (GCC 5.4.1) |
Score | 400 |
Code Size | 1714 Byte |
Status | AC |
Exec Time | 15 ms |
Memory | 256 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 400 / 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 | AC | 4 ms | 256 KB |
subtask_1_04.txt | AC | 5 ms | 256 KB |
subtask_1_05.txt | AC | 10 ms | 256 KB |
subtask_1_06.txt | AC | 3 ms | 256 KB |
subtask_1_07.txt | AC | 3 ms | 256 KB |
subtask_1_08.txt | AC | 5 ms | 256 KB |
subtask_1_09.txt | AC | 5 ms | 256 KB |
subtask_1_10.txt | AC | 5 ms | 256 KB |
subtask_1_11.txt | AC | 3 ms | 256 KB |
subtask_1_12.txt | AC | 3 ms | 256 KB |
subtask_1_13.txt | AC | 5 ms | 256 KB |
subtask_1_14.txt | AC | 6 ms | 256 KB |
subtask_1_15.txt | AC | 5 ms | 256 KB |
subtask_1_16.txt | AC | 3 ms | 256 KB |
subtask_1_17.txt | AC | 3 ms | 256 KB |
subtask_1_18.txt | AC | 4 ms | 256 KB |
subtask_1_19.txt | AC | 6 ms | 256 KB |
subtask_1_20.txt | AC | 3 ms | 256 KB |
subtask_1_21.txt | AC | 3 ms | 256 KB |
subtask_1_22.txt | AC | 3 ms | 256 KB |
subtask_1_23.txt | AC | 4 ms | 256 KB |
subtask_1_24.txt | AC | 12 ms | 256 KB |
subtask_1_25.txt | AC | 7 ms | 256 KB |
subtask_1_26.txt | AC | 7 ms | 256 KB |
subtask_1_27.txt | AC | 15 ms | 256 KB |
subtask_1_28.txt | AC | 15 ms | 256 KB |