結果
| 問題 |
No.92 逃走経路
|
| コンテスト | |
| ユーザー |
bluemegane
|
| 提出日時 | 2021-05-18 10:14:06 |
| 言語 | C#(csc) (csc 3.9.0) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 1,586 bytes |
| コンパイル時間 | 914 ms |
| コンパイル使用メモリ | 106,880 KB |
| 実行使用メモリ | 269,752 KB |
| 最終ジャッジ日時 | 2024-10-08 06:09:59 |
| 合計ジャッジ時間 | 13,435 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | -- * 2 |
| other | TLE * 1 -- * 17 |
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc) Copyright (C) Microsoft Corporation. All rights reserved.
ソースコード
using System.Linq;
using System.Collections.Generic;
using System;
public class Edge
{
public int to { get; set; }
public int fee { get; set; }
}
public class Hello
{
static void Main()
{
string[] line = Console.ReadLine().Trim().Split(' ');
var n = int.Parse(line[0]);
var m = int.Parse(line[1]);
var k = int.Parse(line[2]);
var aa = new List<Edge>[n];
for (int i = 0; i < n; i++) aa[i] = new List<Edge>();
for (int i = 0; i < m; i++)
{
line = Console.ReadLine().Trim().Split(' ');
var a = int.Parse(line[0]) - 1;
var b = int.Parse(line[1]) - 1;
var c = int.Parse(line[2]);
aa[a].Add(new Edge { to = b, fee = c });
aa[b].Add(new Edge { to = a, fee = c });
}
getAns(n, m, aa);
}
static void getAns(int n, int m, List<Edge>[] aa)
{
string[] line = Console.ReadLine().Trim().Split(' ');
var k = Array.ConvertAll(line, int.Parse);
var ans = Enumerable.Range(0, n).ToList();
foreach (var x in k)
{
var ans2 = new List<int>();
foreach (var y in ans)
{
foreach (var z in aa[y])
{
if (z.fee == x) ans2.Add(z.to);
}
}
ans = ans2;
}
ans.Sort();
var ans3 = new List<int>();
foreach (var x in ans) ans3.Add(x + 1);
Console.WriteLine(ans3.Count());
Console.WriteLine(string.Join(" ", ans3));
}
}
bluemegane