ACM,java

Java Acm

Java做ACM-ICPC的特点:

(1) 在一般比赛中,Java程序会有额外的时间和空间,而实际上经过实验,在执行计算密集任务的时候Java并不比C/C++慢多少,只是IO操作较慢而已。

(2) Java 简单而功能强大,有些东西用Java实现起来更为方便,比如高精度。

(3) 用Java不易犯细微的错误,比如C/C++中的指针, “if (n = m) ... ” 等

(4) 目前来看Eclipse已成基本配置,写Java程序反而比C/C++更方便调试。在具体竞赛时也算多一种选择。

(5) 学会Java对以后工作有好处。现在国外很多地方会Java的人比会C/C++的人多。

下面说一下ACM-ICPC队员初用Java编程所遇到的一些问题:

1. 基本输入输出: (1)

JDK 1.5.0 新增的Scanner类为输入提供了良好的基础,简直就是为ACM-ICPC而设的。

一般用法为: import java.io.*

import java.util.* public class Main {

public static void main(String args[])

{

Scanner cin = new Scanner(new BufferedInputStream(System.in)); ...

}

}

当然也可以直接 Scanner cin = new Scanner(System.in);

只是加Buffer可能会快一些 (2)

读一个整数: int n = cin.nextInt(); 相当于 scanf("%d", &n); 或 cin >> n;

读一个字符串:String s = cin.next(); 相当于 scanf("%s", s); 或 cin >> s;

读一个浮点数:double t = cin.nextDouble(); 相当于 scanf("%lf", &t); 或 cin >> t; 读一整行: String s = cin.nextLine(); 相当于 gets(s); 或 cin.getline(...);

判断是否有下一个输入可以用 cin.hasNext() 或 cin.hasNextInt() 或 cin.hasNextDouble() 等,具体见 TOJ 1001 例程。

ACM,java相关文档

最新文档

返回顶部