「一本通 6.2 练习 1」质因数分解

  1. 题目描述
  2. 输出只有一行,包含一个正整数 p,即较大的那个质数。样例
  3. 输出数据 1
  4. 数据范围与提示
  • 答案
  • 题目描述

    原题来自:NOIP 2012 普及组

    已知正整数 n 是两个不同的质数的乘积,试求出较大的那个质数。
    输入格式


    输入只有一行,包含一个正整数 n。
    输出格式


    输出只有一行,包含一个正整数 p,即较大的那个质数。
    样例

    输入数据 1


    21
    

    输出数据 1

    7
    

    数据范围与提示

    对于 30% 的数据,n≤1000;
    对于全部数据,6≤n≤2×109。

    答案:

    #include
    using namespace std;
    long long as(long long a) {
        for (int i = 2; i <= sqrt(a); i++) {
    
            if (a % i == 0) {
                return a/i;
            }
        }
    }
    int main() {
        long long a;
        cin >> a;
        cout << as(a);
    }
    

    答案


    转载请注明来源
    sd12