ACM上做题每次都提示运行超时只看楼主收藏
本帖最后由 mmovve 于 2013-10-20 00:29:34 编辑
求解啊
错误提示:
程序运行超时:
你的程序太慢了,想想办法改进一下速度吧。。
在测试数据很多(几百万个数),而你又用的cin,cout进行输入输出时,也可能会出现超时,改成scanf,printf即可
也有可能是你的程序陷入了死循环不能退出了
package Fen;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
int n=scan.nextByte();
int m=n;
int str[]=new int[20];
int str2[]=new int[20];
int str3[]=new int[20];
while(n>0){
n--;
str[n]=scan.nextByte();
str2[n]=scan.nextByte();
}
scan.close();
for(int i=0;i<m;i++){
str3[i]=str[i]+str2[i];
}
for(int k=1;k<m;k++){
for(int j=0;j<m-1;j++){
if(str3[j]<str3[j+1]){
int temp=str3[j];
str3[j]=str3[j+1];
str3[j+1]=temp;
}
}
}
System.out.println(str3[0]);
}
}
附题目:
计科班有很多Coder,帅帅想知道自己是不是综合实力最强的coder。
帅帅喜欢帅,所以他选了帅气和编程水平作为评选标准。
每个同学的综合得分是帅气程度得分与编程水平得分的和。
他希望你能写一个程序帮他一下。
输入数据有多组。
输入一个数n,代表计科班的总人数。
接下来有n行数,一行数有两个数a,b。
其中a代表该同学的编程水平,b代表该同学的帅气程度。
n=0表示输入结束。输出每组数据占一行,输出所有同学中综合得分最高的分数。
------解决方案--------------------用bufferedinputstream 试试
------解决方案--------------------错误提示:
程序运行超时:
你的程序太慢了,想想办法改进一下速度吧。。
在测试数据很多(几百万个数),
而你又用的cin,cout进行输入输出时,也可能会出现超时,改成scanf,printf即可也有可能是你的程序陷入了死循环不能退出了
是不是提交的时候选的C++啊
------解决方案--------------------有package 是编译错误啊。。。
------解决方案--------------------我靠,有packge肯定错的啊。OJ的服务器上有没有你电脑上的这个包。。。