返回列表 發帖
本帖最後由 李知易 於 2019-12-28 20:03 編輯
  1. import java.io.*;
  2. import java.util.*;


  3. public class B965 {
  4.         B965()
  5.         {
  6.                 StreamTokenizer cin = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));
  7.                 PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));
  8.                 try{
  9.                         while(cin.nextToken()!=StreamTokenizer.TT_EOF)
  10.                         {
  11.                                 int r = (int)cin.nval;
  12.                                 cin.nextToken();
  13.                                 int c = (int)cin.nval;
  14.                                 cin.nextToken();
  15.                                 int m = (int)cin.nval;
  16.                                 
  17.                                 int[][] b = new int[r][c];
  18.                                 
  19.                                 //r , c 行列數
  20.                                 for(int i = 0; i < r; i++)
  21.                                 {
  22.                                        
  23.                                         for(int j = 0; j < c; j++)
  24.                                         {
  25.                                                 cin.nextToken();
  26.                                                 b[i][j] = (int)cin.nval;
  27.                                         }
  28.                                 }
  29.                                 int[] mn = new int[m];
  30.                                 for(int i = 0 ; i < mn.length ; i++)
  31.                                 {
  32.                                         cin.nextToken();
  33.                                         mn[i] = (int)cin.nval;
  34.                                        
  35.                                 }
  36.                                 for(int x = m-1; x >= 0; x--)
  37.                                 {
  38.                                        
  39.                                         if(mn[x] == 0)
  40.                                         {
  41.                                                 int[][] re = new int[c][r];
  42.                                                
  43.                                                 for(int i = 0; i < c; i++)
  44.                                         {
  45.                                                 
  46.                                                 for(int j = 0; j < r; j++)
  47.                                                 {
  48.                                                        
  49.                                                         re[i][j] = b[j][c-1-i];
  50.                                                 }
  51.                                         }
  52.                                                 int t = r;
  53.                                             r = c;
  54.                                             c = t;
  55.                                                 b = re;
  56.                                         }
  57.                                         else if(mn[x] == 1)
  58.                                         {
  59.                                                 int[][] re = new int[r][c];
  60.                                         for(int i = 0; i < r; i++)
  61.                                         {
  62.                                                 
  63.                                                 for(int j = 0; j < c; j++)
  64.                                                 {
  65.                                                         re[i][j] = b[r-1-i][j];
  66.                                                 }
  67.                                         }
  68.                                         b = re;
  69.                                         }
  70.                                 }       
  71.                               
  72.                                 out.print(r+" "+c);
  73.                                 out.println();
  74.                                 for(int i = 0; i < r; i++)
  75.                                 {
  76.                                        
  77.                                         for(int j = 0; j < c; j++)
  78.                                         {
  79.                                                 if(j != 0)
  80.                                                         out.print(" ");
  81.                                                 out.print(b[i][j]);
  82.                                         }out.println();
  83.                                 }
  84.                                 out.println();
  85.                                 out.flush();
  86.                               
  87.                         }
  88.                 }catch(Exception e){}
  89.                
  90.                
  91.         }
  92.         public static void main(String[] args) {
  93.                 // TODO 自動產生的方法 Stub
  94.                 new B965();      
  95.                
  96.         }

  97. }
複製代碼

TOP

返回列表