蓝桥杯 java 回形取数
来源:互联网 发布:网络大电影票房 编辑:程序博客网 时间:2024/06/17 16:55
回形取数
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 39 Solved: 8[Submit][Status][Web Board]Description
回形取数就是沿矩阵的边取数,若当前方向上无数可取或已经取过,则左转90度。一开始位于矩阵左上角,方向向下。
Input
输入第一行是两个不超过200的正整数m, n,表示矩阵的行和列。接下来m行每行n个整数,表示这个矩阵。
Output
输出只有一行,共mn个数,为输入矩阵回形取数得到的结果。数之间用一个空格分隔,行末不要有多余的空格。
Sample Input
3 3 1 2 3 4 5 6 7 8 9Sample Output
1 4 7 8 9 6 3 2 5HINT
请关注微信公众号onlinejudge
Source
import java.util.ArrayList;import java.util.Arrays;import java.util.Scanner; public class Main{ static int f[][],vis[][]; static int n,m,ans; public static void main(String[] args) { Scanner in = new Scanner(System.in); n=in.nextInt(); m=in.nextInt(); f=new int[n+5][m+5]; vis=new int[n+5][m+5]; for(int i=0;i<n;i++){ for(int j=0;j<m;j++){ f[i][j]=in.nextInt(); //System.out.println("*"); } } ans=0; col1(-1,0); System.out.println(); }private static void col1(int row,int col) {// TODO Auto-generated method stubint i;for( i=row+1;i<n;i++){if(vis[i][col]==1)break;vis[i][col]=1;ans++;System.out.print(f[i][col]);if(ans<n*m)System.out.print(" ");else return ;}row1(i-1,col);}private static void row1(int row,int col) {// TODO Auto-generated method stubint i;for(i=col+1;i<m;i++){if(vis[row][i]==1)break;vis[row][i]=1;ans++;System.out.print(f[row][i]);if(ans<n*m)System.out.print(" ");else return ;}col2(row,i-1);}private static void col2(int row, int col) {// TODO Auto-generated method stubint i;for( i=row-1;i>=0;i--){if(vis[i][col]==1)break;vis[i][col]=1;ans++;System.out.print(f[i][col]);if(ans<n*m)System.out.print(" ");else return;}row2(i+1,col);}private static void row2(int row, int col) {// TODO Auto-generated method stubint i;for(i=col-1;i>=0;i--){if(vis[row][i]==1)break;vis[row][i]=1;ans++;System.out.print(f[row][i]);if(ans<n*m)System.out.print(" ");else return;}col1(row,i+1);} }
0 0
- java 蓝桥杯 回形取数
- 蓝桥杯 java 回形取数
- 蓝桥杯java高职组
- 蓝桥杯2013-java带分数
- 蓝桥杯 找素数 Java
- 写日志 Java 蓝桥杯
- 蓝桥杯JAVA Fibonacci数列
- (java)蓝桥杯入门训练
- 蓝桥杯 java 序列求和
- 蓝桥杯java -身份证号码升级
- 最大最小公倍数 java 蓝桥杯
- 蓝桥杯 java 01字串
- 蓝桥杯 生物芯片(java题解)
- Java蓝桥杯Huffuman树
- 蓝桥杯 数独 java
- java 蓝桥杯 洗牌
- java 蓝桥杯 填数字
- java 蓝桥杯 芯片测试
- Linux 内存管理
- bzoj1040 [ZJOI2008]骑士
- 剑指offer:数组中出现次数超过一半的数字
- Freeline 的使用
- pat 1112. Stucked Keyboard
- 蓝桥杯 java 回形取数
- 用户余额充值、提现操作。
- Http协议概述
- 第一次的再坚持一下
- 浏览器中直接打开apk
- Conditional Random Fields as Recurrent Neural Networks
- JavaScript 精华一页纸
- Android手机UI设计---”知乎“界面外观模仿篇(六)---在Fragment里使用Gallery结合listview实现listview横滑
- codeforces 789A(数学)