結果
| 問題 | No.24 数当てゲーム |
| コンテスト | |
| ユーザー |
_Clay____
|
| 提出日時 | 2018-09-30 14:35:07 |
| 言語 | Scheme (Gauche-0.9.15) |
| 結果 |
AC
|
| 実行時間 | 26 ms / 5,000 ms |
| コード長 | 1,561 bytes |
| コンパイル時間 | 190 ms |
| コンパイル使用メモリ | 7,076 KB |
| 実行使用メモリ | 16,128 KB |
| 最終ジャッジ日時 | 2024-10-12 09:06:35 |
| 合計ジャッジ時間 | 1,709 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 10 |
ソースコード
(define n (string->number (read-line)))
(define v (make-vector 10 0))
(letrec* ((get-data (lambda (n a)
(if (zero? n) (reverse a)
(get-data (- n 1)
(cons (string-split (read-line) " ") a)))))
(a (get-data n '()))
(check (lambda (a)
(unless (null? a)
(begin
(if (equal? (cadr (cdddr (car a))) "NO")
(for-each (lambda (x)
(vector-set! v (string->number x) -1))
(reverse (cdr (reverse (car a)))))
(for-each (lambda (x)
(vector-set! v (string->number x)
(+ (vector-ref v (string->number x)) 1)))
(reverse (cdr (reverse (car a))))))
(check (cdr a))))))
(get-result (lambda (n mv mi)
(let* ((v (vector-ref v n))
(b (< mv v)))
(if (eq? n 9) (if b n mi)
(get-result (+ n 1) (if b v mv) (if b n mi)))))))
(check a)
(print (get-result 0 (vector-ref v 0) 0)))
_Clay____