一级标题 1092 最好吃的月饼 (20 分)
在PTA上做了一题用Java做的
发现自己写的代码运行超时 复制别人的代码也运行超时
Java运行的真的那么慢吗?
package 实验1;
import java.util.Scanner;
import java.util.Vector;
public class Sale {
public static void main(String[] args) {
int N,M;
Scanner sc=new Scanner(System.in);
N=sc.nextInt();
M=sc.nextInt();
int [][]arr=new int[M][N];
for(int i=0;i<M;i++) {
for(int j=0;j<N;j++) {
int a=sc.nextInt();
arr[i][j]=a;
}
}
int[] arr2=new int[N];
for(int i=0;i<N;i++) {
for(int j=0;j<M;j++) {
arr2[i]+=arr[j][i];
}
}
Vector<Integer> ans = new Vector<>();
int max=0;
for(int i=0;i<N;i++) {
if(max<=arr2[i]) {
max=arr2[i];
}
}
for(int i=0;i<N;i++) {
if(max==arr2[i]) {
ans.add(i+1);
}
}
System.out.println(max);
//Iterator<String>it=c.iterator();
for(int i=0;i<ans.size();i++) {
if(i!=ans.size()-1) { System.out.print(ans.get(i)+" ");
}else {
System.out.print(ans.get(i));
}
System.out.print(ans.get(i));
}
}
}
复制别人的
import java.util.Scanner;
public class Main {
public static void main(String[] args)
{
Scanner in=new Scanner(System.in);
int N,M;
int max=-1;
int count=0;
N=in.nextInt();
M=in.nextInt();
int number []=new int[N];
for(int i=0;i<M;i++)
{
for(int j=0;j<N;j++)
{
number[j]+=in.nextInt();
if(number[j]>max)
max=number[j];
}
}
System.out.println(max);
for(int i=0;i<N;i++)
{
if(number[i]==max)
{
if(count!=0)
System.out.print(" ");
System.out.print(i+1);
count++;
}
}
}
}