會發現"JAVA自動優化"這個現象,主要是因為在測試此題的時候,提交不同做法程式碼的執行時間相同!
程式碼如以下:
import java.util.Scanner;
public class e189 {
public static void main(String[] args) {
Scanner cin = new Scanner(System.in);
while (cin.hasNext()) {
int n = cin.nextInt();
while (n >= 3)
n -= 3;
if (n == 0)
System.out.println("YES");
else
System.out.println("NO");
}
}
}
import java.util.Scanner;
public class e189 {
public static void main(String[] args) {
Scanner cin = new Scanner(System.in);
while (cin.hasNext()) {
int n = cin.nextInt();
if (n%3 == 0)
System.out.println("YES");
else
System.out.println("NO");
}
}
}
以上兩種做法,都會得到 AC(0.2s)。
但是在 C/C++ 和 Python 上,卻無法達到相同效果。
有興趣的人可以搜尋:"JVM 循環優化"。