[BOJ]1978小数点を探す
9425 ワード
質問する
プログラムを書き出して、与えられたN個の数の中で何個が小数であるかを見つけます.
入力
1行目の数字はNです.Nは100以下である.次はN個、数は1000以下の自然数です.
しゅつりょく
与えられた数のうちの少数の数を出力します.
入力例1
4 1 3 5 7
サンプル出力1
3
に答える
この数字nが素数であるかどうかをチェックするときは、2~nの平方根に分けてチェックします.
コード#コード#
import java.io.*;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st;
int n = Integer.parseInt(br.readLine());
int curNum, count = 0;
boolean isPrimeNum;
int[] arr = new int[n];
st = new StringTokenizer(br.readLine());
for (int i = 0; i < n; i++) {
arr[i] = Integer.parseInt(st.nextToken());
}
for (int i = 0; i < n; i++) { // 횟수
curNum = arr[i];
isPrimeNum = true;
if (curNum < 2) continue;
if (curNum == 2) {
count++;
continue;
}
for (int j = 2; j <= Math.sqrt(curNum); j++) {
if (curNum % j == 0) {
isPrimeNum = false;
break;
}
}
if (isPrimeNum) count++;
}
bw.write(Integer.toString(count));
bw.flush();
}
}
Reference
この問題について([BOJ]1978小数点を探す), 我々は、より多くの情報をここで見つけました https://velog.io/@ffwang/BOJ-1979-소수-찾기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol