zoukankan      html  css  js  c++  java
  • Java实现 蓝桥杯VIP 基础练习 回形取数

    问题描述
      回形取数就是沿矩阵的边取数,若当前方向上无数可取或已经取过,则左转90度。一开始位于矩阵左上角,方向向下。
    输入格式
      输入第一行是两个不超过200的正整数m, n,表示矩阵的行和列。接下来m行每行n个整数,表示这个矩阵。
    输出格式
      输出只有一行,共mn个数,为输入矩阵回形取数得到的结果。数之间用一个空格分隔,行末不要有多余的空格。
    样例输入
    3 3
    1 2 3
    4 5 6
    7 8 9
    样例输出
    1 4 7 8 9 6 3 2 5
    样例输入
    3 2
    1 2
    3 4
    5 6
    样例输出
    1 3 5 6 4 2

    package 蓝桥杯VIP;
    
    import java.util.Scanner;
    
    public class 回形取数2 {
    
    	static int k[][];
    	public static void main(String args[])
    	{
    		Scanner cn=new Scanner(System.in);
    		
    		int q=cn.nextInt();
    		int w=cn.nextInt();
    		k=new int[q+1][w+1];
    		for(int i=1;i<=q;i++)
    			for(int j=1;j<=w;j++)
    				k[i][j]=cn.nextInt();
    		
    		String str="";
    		int a=1,i=0,x=1,y=1;
    		while(true)
    		{
    			if(i==q*w)break;
    			str=str+k[x][y]+" ";
    			i++;x++;
    			
    			while(x<=q-a)
    			{
    				str=str+k[x][y]+" ";
    				i++;x++;
    			}
    			if(i==q*w)break;
    			str=str+k[x][y]+" ";
    			y++;i++;
    			
    			while(y<=w-a)
    			{
    				str=str+k[x][y]+" ";
    				i++;y++;
    			}
    			if(i==q*w)break;
    			 str=str+k[x][y]+" ";
    			  i++;x--;
    			while(x>a)
    			{
    				str=str+k[x][y]+" ";
    				i++;x--;
    			}
    			if(i==q*w)break;
    			 str=str+k[x][y]+" ";
    			 i++;y--;
    			while(y>a+1)
    			{
    				str=str+k[x][y]+" ";
    				i++;y--;
    			}
    			a++;
    		}
    		
    	for(int c=0;c<str.length()-1;c++)
    		System.out.print(str.charAt(c));
    	}
    
    }
    
    

    原文:https://blog.csdn.net/yiyuan_chen/article/details/56671967

  • 相关阅读:
    Building a flexiable renderer
    Indirect Illumination in mental ray
    我的心情
    Cellular Automata
    Subsurface Scattering in mental ray
    Shader Types in mental ray
    BSP Traversal
    我的渲染器终于达到了MR的速度
    How to handle displacement and motion blur
    说明
  • 原文地址:https://www.cnblogs.com/a1439775520/p/12948649.html
Copyright © 2011-2022 走看看