結果
問題 | No.565 回転拡大 |
ユーザー | Grenache |
提出日時 | 2017-09-08 22:37:48 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 150 ms / 2,000 ms |
コード長 | 1,945 bytes |
コンパイル時間 | 4,021 ms |
コンパイル使用メモリ | 78,328 KB |
実行使用メモリ | 41,768 KB |
最終ジャッジ日時 | 2024-11-07 06:23:27 |
合計ジャッジ時間 | 9,680 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 30 |
ソースコード
import java.io.*; import java.util.*; public class Main_yukicoder565 { private static Scanner sc; private static Printer pr; private static void solve() { int r = sc.nextInt(); int k = sc.nextInt(); int h = sc.nextInt(); int w = sc.nextInt(); char[][] c = new char[h][]; for (int i = 0; i < h; i++) { c[i] = sc.next().toCharArray(); } char[][] ret = null; if (r == 0) { ret = new char[h * k][w * k]; for (int i = 0; i < h; i++) { for (int ik = 0; ik < k; ik++) { for (int j = 0; j < w; j++) { for (int jk = 0; jk < k; jk++) { ret[i * k + ik][j * k + jk] = c[i][j]; } } } } } else if (r == 180) { ret = new char[h * k][w * k]; for (int i = 0; i < h; i++) { for (int ik = 0; ik < k; ik++) { for (int j = 0; j < w; j++) { for (int jk = 0; jk < k; jk++) { ret[i * k + ik][j * k + jk] = c[h - 1 - i][w - 1 - j]; } } } } } else if (r == 90) { ret = new char[w * k][h * k]; for (int j = 0; j < w; j++) { for (int jk = 0; jk < k; jk++) { for (int i = 0; i < h; i++) { for (int ik = 0; ik < k; ik++) { ret[j * k + jk][i * k + ik] = c[h - 1 - i][j]; } } } } } else { ret = new char[w * k][h * k]; for (int j = 0; j < w; j++) { for (int jk = 0; jk < k; jk++) { for (int i = 0; i < h; i++) { for (int ik = 0; ik < k; ik++) { ret[j * k + jk][i * k + ik] = c[i][w - 1 - j]; } } } } } for (int i = 0; i < ret.length; i++) { for (int j = 0; j < ret[0].length; j++) { pr.print(ret[i][j]); } pr.println(); } } // --------------------------------------------------- public static void main(String[] args) { sc = new Scanner(System.in); pr = new Printer(System.out); solve(); pr.close(); sc.close(); } private static class Printer extends PrintWriter { Printer(PrintStream out) { super(out); } } }