vivo2017实习生编程题
来源:互联网 发布:点卡商城源码 编辑:程序博客网 时间:2024/06/06 00:33
题目描述:输入一个3行4列的,返回一个值,这个值为一行中的最大值且为当前列的最小值,若存在这样的值则返回,不存在则返回-1。
package java_problem;import java.util.Scanner;public class FindArrayNumber {//判断某个数是否为某个数组的某列的最小值public static boolean isColMin(int[][] arr,int n,int m){int colMin=arr[0][0];int[] colArr=new int[4];//List<Integer> al=new ArrayList<Integer>();//求出每一列最小值放入cowMax数组中for(int j=0;j<4;j++){colMin=arr[0][j];for(int i=0;i<3;i++){if(arr[i][j]<colMin){colMin=arr[i][j];}}colArr[j]=colMin;//al.add(colMin);}return n==colArr[m];}public static int yqtFind(int[][] arr){int rowMax=arr[0][0];int[] rowArr=new int[3];//求出每一行最大值放入rowMax数组中for(int i=0;i<3;i++){rowMax=arr[i][0];int m=0;for(int j=0;j<4;j++){if(arr[i][j]>rowMax){rowMax=arr[i][j];m=j;}}if(isColMin(arr,arr[i][m],m)){return arr[i][m];}rowArr[i]=rowMax;}//System.out.println(Arrays.toString(colArr));//System.out.println(Arrays.toString(rowArr));return -1;}public static void main(String[] args) {Scanner sc=new Scanner(System.in);int[][] arr=new int[3][4];for(int i=0;i<3;i++){for(int j=0;j<4;j++){arr[i][j]=sc.nextInt();}}//System.out.println(findNumber(arr));System.out.println(yqtFind(arr));}}
阅读全文
1 0
- vivo2017实习生编程题
- 网易2016实习生编程题
- 网易实习生编程题2
- 2017网易实习生编程题
- 实习生网面编程题
- 阿里实习生编程题2
- 2012年腾讯实习生笔试编程题
- 阿里巴巴2016实习生招聘编程题
- 京东2016实习生在线编程题
- 乐视2017暑期实习生笔试编程题
- 腾讯2017暑期实习生编程题
- 腾讯2017暑期实习生编程题
- 腾讯2017暑期实习生编程题
- 腾讯2017暑期实习生编程题
- 腾讯2017暑期实习生编程题
- 百度2017暑期实习生编程题
- 网易实习生笔试编程题 二叉树
- 网易实习生笔试编程题 比较重量
- Java:实现简单的阻塞队列
- 函数返回指针数组
- 系统集成项目管理工程师学习笔记(三)项目管理的一般知识
- 0517
- 字符串转换成十进制整数
- vivo2017实习生编程题
- Python:Template使用指南
- Java List集合使用方法介绍(2)——公告管理
- C++ 简易string类实现(五)-进一步抽象
- 多路查找树(B树)
- Linux中软链接和硬链接的区别(笔记)
- 台湾大学林轩田机器学习基石课程学习笔记11 -- Linear Models for Classification
- 人员签到程序
- 宏润年