結果
| 問題 |
No.1147 土偶Ⅱ
|
| ユーザー |
kokatsu
|
| 提出日時 | 2022-11-04 22:48:23 |
| 言語 | D (dmd 2.109.1) |
| 結果 |
AC
|
| 実行時間 | 4 ms / 500 ms |
| コード長 | 772 bytes |
| コンパイル時間 | 2,236 ms |
| コンパイル使用メモリ | 204,728 KB |
| 実行使用メモリ | 6,944 KB |
| 最終ジャッジ日時 | 2024-06-22 16:38:44 |
| 合計ジャッジ時間 | 3,152 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 20 |
ソースコード
import std;
void main() {
int n, m;
readf("%d %d\n", n, m);
int[][] rs = new int[][](n, n);
foreach (i; 0 .. n) {
rs[i][] = int.max / 2;
rs[i][i] = 0;
}
foreach (_; 0 .. m) {
int a, b;
readf("%d %d\n", a, b);
--a, --b;
rs[a][b] = rs[b][a] = 1;
}
foreach (i; 0 .. n) {
foreach (j; 0 .. n) {
foreach (k; 0 .. n) {
rs[j][k] = min(rs[j][k], rs[j][i]+rs[i][k]);
}
}
}
int res;
foreach (i; 0 .. n-2) {
foreach (j; i+1 .. n-1) {
foreach (k; j+1 .. n) {
if (rs[i][j] == 2 || rs[j][k] == 2 || rs[k][i] == 2) continue;
++res;
}
}
}
res.writeln;
}
kokatsu