結果
問題 | No.22 括弧の対応 |
ユーザー | ゴリポン先生 |
提出日時 | 2024-01-24 09:59:21 |
言語 | D (dmd 2.109.1) |
結果 |
AC
|
実行時間 | 2 ms / 5,000 ms |
コード長 | 566 bytes |
コンパイル時間 | 4,556 ms |
コンパイル使用メモリ | 210,816 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-09-28 07:03:28 |
合計ジャッジ時間 | 5,389 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 19 |
ソースコード
module main; import std; void main() { // 入力 int N, K; readln.chomp.formattedRead("%d %d", N, K); auto S = readln.chomp; // 答えの計算と出力 int[][] groups; auto stack = DList!int(); foreach (e; S.enumerate(1)) { int i = e.index; auto c = e.value; if (c == '(') { stack.insertBack(i); } else { groups ~= [i, stack.back]; stack.removeBack; } } // Kが含まれる組を見つける auto ans = groups.find!(a => !a.find(K).empty); // その組のKでない数を表示する writeln(ans.front.find!(a => a != K).front); }