結果

問題 No.565 回転拡大
ユーザー nebukuro09
提出日時 2017-09-08 22:31:48
言語 PyPy2
(7.3.15)
結果
AC  
実行時間 97 ms / 2,000 ms
コード長 733 bytes
コンパイル時間 673 ms
コンパイル使用メモリ 76,672 KB
実行使用メモリ 78,080 KB
最終ジャッジ日時 2024-11-07 06:16:10
合計ジャッジ時間 4,671 ms
ジャッジサーバーID
(参考情報)
judge3 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 30
権限があれば一括ダウンロードができます

ソースコード

diff #

R, K = map(int, raw_input().split())
H, W = map(int, raw_input().split())
B = [list(raw_input()) for _ in xrange(H)]


def rotate(A):
    h = len(A)
    w = len(A[0])
    C = [['' for _ in xrange(h)] for _ in xrange(w)]
    for i in xrange(h):
        for j in xrange(w):
            C[j][h-i-1] = A[i][j]
    return C


def scale(A, k):
    h = len(A)
    w = len(A[0])
    C = [['' for _ in xrange(w * k)] for _ in xrange(h * k)]
    for i in xrange(h):
        for j in xrange(w):
            for a in xrange(i*k, i*k+k):
                for b in xrange(j*k, j*k+k):
                    C[a][b] = A[i][j]
    return C


while R > 0:
    B = rotate(B)
    R -= 90

B = scale(B, K)

for i in xrange(len(B)):
    print ''.join(B[i])
0