結果
問題 |
No.565 回転拡大
|
ユーザー |
|
提出日時 | 2018-01-01 16:06:24 |
言語 | Scheme (Gauche-0.9.15) |
結果 |
AC
|
実行時間 | 25 ms / 2,000 ms |
コード長 | 1,024 bytes |
コンパイル時間 | 76 ms |
コンパイル使用メモリ | 6,820 KB |
実行使用メモリ | 16,256 KB |
最終ジャッジ日時 | 2024-12-22 23:49:15 |
合計ジャッジ時間 | 2,614 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 30 |
ソースコード
(define (rotate-right mx) (let loop ([ls mx] [rs (make-list (length (car mx)) '())]) (cond [(null? ls) rs] [else (loop (cdr ls) (map (lambda (x y) (cons x y)) (car ls) rs))]))) (define (rotate-pict mx r) (cond [(= r 90) (rotate-right mx)] [(= r 180) (rotate-right (rotate-right mx))] [(= r 270) (rotate-right (rotate-right (rotate-right mx)))] [else mx])) (define (enlarge-print mx k) (for-each (lambda (rl) (let ([s (list->string (concatenate (map (lambda (x) (make-list k x)) rl)))]) (dotimes (k) (print s))) ) mx)) (define (read-pict h) (let loop ([n h] [ls '()]) (cond [(zero? n) (reverse ls)] [else (loop (- n 1) (cons (string->list (read-line)) ls))]))) (define (main args) (let* ([r (read)] [k (read)] [h (read)] [w (read-line)] [pl (read-pict h)]) (enlarge-print (rotate-pict pl r) k)) 0)