結果
問題 |
No.565 回転拡大
|
ユーザー |
![]() |
提出日時 | 2018-02-17 20:20:07 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 261 ms / 2,000 ms |
コード長 | 1,231 bytes |
コンパイル時間 | 2,239 ms |
コンパイル使用メモリ | 77,192 KB |
実行使用メモリ | 55,252 KB |
最終ジャッジ日時 | 2024-06-24 12:19:13 |
合計ジャッジ時間 | 9,392 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 30 |
ソースコード
import java.util.*; public class Main { static Scanner sc = new Scanner(System.in); public static void main(String[] args) { //拡大前の画像ar1を作る int r = sc.nextInt(); int k = sc.nextInt(); int h = sc.nextInt(); int w = sc.nextInt(); char[][] ar1 = new char[h][w]; for (int i=0; i<h; i++) { ar1[i] = sc.next().toCharArray(); } //拡大後の画像ar2を作る int H = h*k; int W = w*k; char[][] ar2 = new char[H][W]; for (int i=0; i<H; i++) { for (int j=0; j<W; j++) { ar2[i][j] = ar1[i/k][j/k]; } } //ar2を指定分回転させて表示 if (r==0) { for (int i=0; i<H; i++) { for (int j=0; j<W; j++) { System.out.print(ar2[i][j]); } System.out.println(); } } else if (r==90) { for (int j=0; j<W; j++) { for (int i=H-1; i>=0; i--) { System.out.print(ar2[i][j]); } System.out.println(); } } else if (r==180) { for (int i=H-1; i>=0; i--) { for (int j=W-1; j>=0; j--) { System.out.print(ar2[i][j]); } System.out.println(); } } else if (r==270) { for (int j=W-1; j>=0; j--) { for (int i=0; i<H; i++) { System.out.print(ar2[i][j]); } System.out.println(); } } } }