結果
| 問題 |
No.22 括弧の対応
|
| コンテスト | |
| ユーザー |
norioc
|
| 提出日時 | 2015-11-13 08:31:57 |
| 言語 | Scala(Beta) (3.6.2) |
| 結果 |
AC
|
| 実行時間 | 927 ms / 5,000 ms |
| コード長 | 714 bytes |
| コンパイル時間 | 13,330 ms |
| コンパイル使用メモリ | 264,700 KB |
| 実行使用メモリ | 64,388 KB |
| 最終ジャッジ日時 | 2024-11-30 05:43:36 |
| 合計ジャッジ時間 | 29,169 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 19 |
ソースコード
import math._
import util.control.Breaks._
import scala.collection.mutable.ArrayBuffer
object Main {
def main(args: Array[String]) = {
val sc = new java.util.Scanner(System.in)
val n, k = sc.nextInt
val s = sc.next
val xs = new ArrayBuffer[(Int, Char)] // (インデックス, 括弧文字)
breakable {
for (i <- 0 to s.length-1) s(i) match {
case '(' => xs.append((i, '('))
case ')' => {
assert(xs.last._2 == '(')
if (i == k-1) {
println(xs.last._1 + 1)
break
}
if (xs.last._1 == k-1) {
println(i+1)
break
}
}
xs.remove(xs.length-1)
}
}
}
}
norioc