L1-028 判断素数 - java

题目解析

判断给定的数是否为素数

解题思路

暴力跑他

(相比这个暴力比起来有一个小优化: 我们可以发现除了第一个素数以外, 其他的任何素数都是奇数,所以我们之后每次都可以可以+2 +2 的往上加,而不是 +1 +1 的往上加)

代码

import java.io.*;
import java.util.*;

public class Main
{

	static boolean isprime(int x)
	{
		if (x < 2)
			return false;

		for (int i = 2; i <= x / i; i++)
		{
			if (x % i == 0)
				return false;
		}
		return true;
	}

	public static void main(String[] args)
	{
		int n = sc.nextInt();
		while (n-- > 0)
		{
			int x = sc.nextInt();

			if (isprime(x))
				out.println("Yes");
			else
				out.println("No");
		}

		out.flush();
		out.close();
	}

	static Scanner sc = new Scanner(System.in);
	static PrintWriter out = new PrintWriter(System.out);
}

团体程序设计天梯赛-练习集-java

赞赏