C++ [NOIP2012 普及组] 质因数分解

文章目录

  • 一、题目描述
  • [NOIP2012 普及组] 质因数分解
    • 题目描述
    • 输入格式
    • 输出格式
    • 样例 #1
      • 样例输入 #1
      • 样例输出 #1
    • 提示
  • 二、参考代码


一、题目描述

[NOIP2012 普及组] 质因数分解

题目描述

已知正整数 n n n 是两个不同的质数的乘积,试求出两者中较大的那个质数。

输入格式

输入一个正整数 n n n

输出格式

输出一个正整数 p p p,即较大的那个质数。

样例 #1

样例输入 #1

21

样例输出 #1

7

提示

1 ≤ n ≤ 2 × 1 0 9 1 \le n\le 2\times 10^9 1n2×109

NOIP 2012 普及组 第一题


二、参考代码

#include 
#include 
#include 
#include 
#include 
using namespace std;
const int maxn = 100000001;
int arr[maxn];

bool isPrime(int num)
{
    if (num <= 1)
    {
        return false;
    }
    for (int i = 2; i <= sqrt(num) + 1; i++)
    {
        if (num % i == 0)
        {
            return false;
        }
    }
    return true;
}

int main(void) {
    int num;
    cin >> num;
    
    for (int i = sqrt(num); i >= 1; i--)
    {
        if (num % i == 0)
        {
            cout << num / i;
            break;
        }
    }
      
}



你可能感兴趣的:(洛谷,c++,算法,数据结构)