結果
| 問題 |
No.135 とりあえず1次元の問題
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2016-06-23 16:08:31 |
| 言語 | Scheme (Gauche-0.9.15) |
| 結果 |
AC
|
| 実行時間 | 400 ms / 5,000 ms |
| コード長 | 637 bytes |
| コンパイル時間 | 49 ms |
| コンパイル使用メモリ | 6,812 KB |
| 実行使用メモリ | 27,568 KB |
| 最終ジャッジ日時 | 2024-06-11 06:52:15 |
| 合計ジャッジ時間 | 2,995 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 22 |
ソースコード
(define (iota n . args)
(let ((start (if (pair? args) (car args) 0))
(step (if (and (pair? args) (pair? (cdr args))) (cadr args) 1)))
(let loop ((m n) (last (+ start (* step (- n 1)))) (a '()))
(if (zero? m)
a
(loop (- m 1) (- last step) (cons last a))))))
(define (solve a)
(let loop((b (sort a <)) (prev -1001001001) (res 1001001001))
(if (null? b)
(if (= res 1001001001) 0 res)
(let ((curr (car b)))
(if (= curr prev)
(loop (cdr b) curr res)
(loop (cdr b) curr (min res (- curr prev))))))))
(display (solve (let ((N (read))) (map (lambda (x) (read)) (iota N)))))
(newline)