結果
問題 |
No.565 回転拡大
|
ユーザー |
![]() |
提出日時 | 2018-09-24 22:26:19 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 142 ms / 2,000 ms |
コード長 | 1,424 bytes |
コンパイル時間 | 2,479 ms |
コンパイル使用メモリ | 77,740 KB |
実行使用メモリ | 54,468 KB |
最終ジャッジ日時 | 2024-09-24 17:27:15 |
合計ジャッジ時間 | 7,685 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 30 |
ソースコード
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int R = scan.nextInt(); int K = scan.nextInt(); int H = scan.nextInt(); int W = scan.nextInt(); int[][]c = new int[H][W]; for(int i = 0; i < H; i++) { String s = scan.next(); for(int j = 0; j < W; j++) { if(s.charAt(j) == '#') { c[i][j] = 1; } } } scan.close(); if(R == 0) { disp(c, H, W, K); }else if(R == 180) { int[][] new_c = new int[H][W]; for(int i = 0; i < H; i++) { for(int j = 0; j < W; j++) { new_c[i][j] = c[H - i - 1][W - j - 1]; } } disp(new_c, H, W, K); }else if(R == 90) { int[][] new_c = new int[W][H]; for(int i = 0; i < W; i++) { for(int j = 0; j < H; j++) { new_c[i][j] = c[H - j - 1][i]; } } disp(new_c, W, H, K); }else { int[][] new_c = new int[W][H]; for(int i = 0; i < W; i++) { for(int j = 0; j < H; j++) { new_c[i][j] = c[j][W - i - 1]; } } disp(new_c, W, H, K); } } static void disp(int[][] cell, int r, int c, int t) { for(int i = 0; i < r; i++) { StringBuilder sb = new StringBuilder(); for(int j = 0; j < c; j++) { char ch = '.'; if(cell[i][j] == 1) { ch = '#'; } for(int k = 0; k < t; k++) { sb.append(ch); } } for(int k = 0; k < t; k++) { System.out.println(sb.toString()); } } } }