【编程竞赛】JAVA
由于第一次参加AtCoder比赛时表现不佳,所以为了准备下一次比赛,我整理了一些似乎必要的知识,并会随时进行补充。
获取标准输入
如果没有这个,什么都不能做。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
//標準出力の1行目取得
String first_row = sc.next();
//標準出力の2行目取得
String second_row = sc.next();
}
}
将文本型转换为数值型
如果想要将标准输出用作数字时使用
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
//標準出力の1行目取得
String first_row = sc.next();
//整数に変換
Integer num = Integer.parseInt(first_row);
}
}
获取第n个字符的文本
我觉得用charAt可能更好,但是出现了错误无法使用,所以我用substring代替了。
(我想请教一下怎么使用charAt。)
String test = "ABCDEFGHIJKLMNOPQRST";
//substring(k,n)で文字のk+1からn+1番目までの文字を取得できる。
//substring(k-1,k)でk番目の文字を取得できる。
String val = test.substring(2,3);
请反省一下
第一次参加编程竞赛的结果是0分…
原因是我尝试解决了我感觉能解决的问题,但是我编写的程序执行时间超过了限制,所以无法得分。
在反省的角度上,
应该在参加之前解决练习问题。
应该预先准备好编辑环境。
我明白了的事情
・如果在嵌套中使用两次以上的for循环或while循环,可能会超过执行时间。
・即使是复杂的问题,也最好从较小的数字开始考虑。
・即使是看起来简单的问题,如果要避免超过执行时间限制,有时需要找到规律。
请参阅以下文章
获取第n个字符