BNU 33960 The table

其實就是簽到題。。高精度,就是讓你求一個矩陣哪一列的乘積和最大,輸出該列的列號,如果乘積相同則輸出最大的列號。

import java.util.Scanner;
import java.math.*;

public class Main {
	static final int maxn = 1000 + 10;
	static final int maxm = 25 + 10;
	static int n,m;
	static BigInteger []sum = new BigInteger[maxm];
	static BigInteger [][]a = new BigInteger[maxn][maxm];
	public static void main(String[] args) {
		// TODO Auto-generated method stub
	     Scanner cin = new Scanner(System.in);
	     while(cin.hasNext())
	     {
	    	 m=cin.nextInt();
	    	 n=cin.nextInt();
	    	 for(int i=1;i<=n;i++)
	    		 for(int j=1;j<=m;j++)
	    			 a[i][j]=cin.nextBigInteger();
	    	 for(int i=1;i<=m;i++)
	    		 sum[i]=new BigInteger("1");
	    	 for(int j=1;j<=m;j++)
	    		 for(int i=1;i<=n;i++)
	    			 sum[j]=sum[j].multiply(a[i][j]);
	    	 BigInteger Sum = sum[1];
	    	 int tt=1;
	    	 for(int i=2;i<=m;i++)
	    	 {
	    		 int flag=sum[i].compareTo(Sum);
	    		 if(flag>=0)
	    		 {
	    			 Sum=sum[i];
	    			 tt=i;
	    		 }
	    	 }
	    	 System.out.println(tt);
	     }
	}
}


發佈了149 篇原創文章 · 獲贊 7 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章