求最小值所在行与列之和。

题目内容:

输入一个n*n数组,输出最小值所在行与列之和(要求最小值唯一)。

输入格式:

整数n

按行输入n*n个整数,

输出格式:

和值

输入样例:

3

1 2 3

4 5 6

7 8 9

输出样例:

17

下面代码仅供参考,希望能帮到你。

import java.util.Scanner;
public class Main {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner s=new Scanner(System.in);
		int n=s.nextInt();
		int sum=0;
		int[][] array=new int[n][n];
		//输入数组
		for(int i=0; i<n; i++) {
			for(int j=0; j<n; j++) {
				array[i][j]=s.nextInt();
			}
		}
		s.close();
		//寻找最小元素
		int temp=array[0][0];
		for(int p=0; p<n; p++) {
			for(int q=0; q<n; q++ ) {
				if(array[p][q]<temp) {
					temp=array[p][q];
				}
			}
		}
		//进行加法操作,求取行列元素之和,此处多加一个最小元素
		for(int w=0; w<n; w++) {
			for(int v=0; v<n; v++) {
				if(array[w][v]==temp) {
				  for(int u=0; u<n; u++) {
					  sum+=array[w][u];
					  sum+=array[u][v];
				  }
				}                                               
			}
		}
		//减去一个重复的最小元素
		sum-=temp;
		System.out.println(sum);

	}

}

你可能感兴趣的:(求最小值所在行与列之和。)