結果
問題 |
No.519 アイドルユニット
|
ユーザー |
![]() |
提出日時 | 2017-05-29 11:54:34 |
言語 | C#(csc) (csc 3.9.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 1,486 bytes |
コンパイル時間 | 1,111 ms |
コンパイル使用メモリ | 112,736 KB |
実行使用メモリ | 35,584 KB |
最終ジャッジ日時 | 2024-09-21 18:05:54 |
合計ジャッジ時間 | 5,484 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | TLE * 1 -- * 33 |
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc) Copyright (C) Microsoft Corporation. All rights reserved.
ソースコード
using System; using System.Collections.Generic; using System.Linq; using System.Collections; using System.Linq.Expressions; static class Program { static void Main() { new Magatro().Solve(); } } struct P { public string Name; public int Time; public P(string s, int time) { Name = s; Time = time; } } class Magatro { private int N; private int[][] F; private bool[] Use; private void Scan() { N = int.Parse(Console.ReadLine()); F = new int[N][]; for (int i = 0; i < N; i++) { F[i] = Console.ReadLine().Split(' ').Select(int.Parse).ToArray(); } } public int Sol() { int first = -1; for (int i = 0; i < N; i++) { if (!Use[i]) { first = i; break; } } if (first == -1) { return 0; } Use[first] = true; int max = -1; for (int second = first + 1; second < N; second++) { if (Use[second]) continue; Use[second] = true; var i = Sol() + F[first][second]; if (max < i) { max = i; } Use[second] = false; } Use[first] = false; return max; } public void Solve() { Scan(); Use = new bool[N]; Console.WriteLine(Sol()); } }