結果
| 問題 | 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)))
            
            
            
        