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