結果
問題 | No.22 括弧の対応 |
ユーザー | MiyamonY |
提出日時 | 2019-09-05 00:12:45 |
言語 | Scheme (Gauche-0.9.15) |
結果 |
AC
|
実行時間 | 31 ms / 5,000 ms |
コード長 | 515 bytes |
コンパイル時間 | 46 ms |
コンパイル使用メモリ | 5,376 KB |
実行使用メモリ | 16,512 KB |
最終ジャッジ日時 | 2024-07-20 07:44:31 |
合計ジャッジ時間 | 1,940 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 19 |
ソースコード
(use data.queue) (let* ((pair (map string->number (string-split (read-line) #\space))) (k (cadr pair)) (s (read-line))) (print (let loop ((chars (string->list s)) (i 1) (stack (make-queue))) (cond ((eqv? (car chars) #\() (queue-push! stack i) (loop (cdr chars) (+ i 1) stack)) ((eqv? (car chars) #\)) (let1 popped (queue-pop! stack) (cond ((= popped k) i) ((= i k) popped) (else (loop (cdr chars) (+ i 1) stack)))))))))