码迷,mamicode.com
首页 > 其他好文 > 详细

OCAC暑期比赛第一场 L题 判断素数 题解

时间:2019-07-01 14:35:24      阅读:99      评论:0      收藏:0      [点我收藏+]

标签:没有   false   include   namespace   代码   整数   mes   个数   bool   

判断素数
【题目描述】
素数,是指除了一和它本身外,不能被别的书整除的数。
给你一个整数数 a (0 <= a <= 10^18) ,请你判断它是不是素数。
【输入格式】
输入一个整数 a (0 <= a <= 10^18)。
【输出格式】
如果 a 是素数,输出 "YES";否则,输出 "NO" 。
【样例输入1】
8
【样例输出1】
NO
【样例输入2】
13
【样例输出2】
YES
【题目分析】
对于一个数 a, 从 2 到 sqrt(a) 找找有没有能够整除 a 的数。
实现代码如下:

#include <bits/stdc++.h>
using namespace std;

long long a;

bool check() {
    if (a < 2) return false;
    for (long long i = 2; i * i <= a; i ++) {
        if (a % i == 0) return false;
    }
    return true;
}

int main() {
    cin >> a;
    puts(check() ? "YES" : "NO");
    return 0;
}

 

OCAC暑期比赛第一场 L题 判断素数 题解

标签:没有   false   include   namespace   代码   整数   mes   个数   bool   

原文地址:https://www.cnblogs.com/ocac/p/11113458.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!