本帖最後由 李知易 於 2019-12-28 20:03 編輯
- import java.io.*;
- import java.util.*;
- public class B965 {
- B965()
- {
- StreamTokenizer cin = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));
- PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));
- try{
- while(cin.nextToken()!=StreamTokenizer.TT_EOF)
- {
- int r = (int)cin.nval;
- cin.nextToken();
- int c = (int)cin.nval;
- cin.nextToken();
- int m = (int)cin.nval;
-
- int[][] b = new int[r][c];
-
- //r , c 行列數
- for(int i = 0; i < r; i++)
- {
-
- for(int j = 0; j < c; j++)
- {
- cin.nextToken();
- b[i][j] = (int)cin.nval;
- }
- }
- int[] mn = new int[m];
- for(int i = 0 ; i < mn.length ; i++)
- {
- cin.nextToken();
- mn[i] = (int)cin.nval;
-
- }
- for(int x = m-1; x >= 0; x--)
- {
-
- if(mn[x] == 0)
- {
- int[][] re = new int[c][r];
-
- for(int i = 0; i < c; i++)
- {
-
- for(int j = 0; j < r; j++)
- {
-
- re[i][j] = b[j][c-1-i];
- }
- }
- int t = r;
- r = c;
- c = t;
- b = re;
- }
- else if(mn[x] == 1)
- {
- int[][] re = new int[r][c];
- for(int i = 0; i < r; i++)
- {
-
- for(int j = 0; j < c; j++)
- {
- re[i][j] = b[r-1-i][j];
- }
- }
- b = re;
- }
- }
-
- out.print(r+" "+c);
- out.println();
- for(int i = 0; i < r; i++)
- {
-
- for(int j = 0; j < c; j++)
- {
- if(j != 0)
- out.print(" ");
- out.print(b[i][j]);
- }out.println();
- }
- out.println();
- out.flush();
-
- }
- }catch(Exception e){}
-
-
- }
- public static void main(String[] args) {
- // TODO 自動產生的方法 Stub
- new B965();
-
- }
- }
複製代碼 |