当前位置:
首页 >
【蓝桥杯官网试题 -算法训练】素因子去重(数学,数论,因子约数)
发布时间:2023/12/10
40
豆豆
生活随笔
收集整理的这篇文章主要介绍了
【蓝桥杯官网试题 -算法训练】素因子去重(数学,数论,因子约数)
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
题干:
问题描述
给定一个正整数n,求一个正整数p,满足p仅包含n的所有素因子,且每个素因子的次数不大于1
输入格式
一个整数,表示n
输出格式
输出一行,包含一个整数p。
样例输入
1000
样例输出
10
数据规模和约定
n<=10^12
样例解释:n=1000=2^3*5*3,p=2*5=10
解题报告:
就是个整数的唯一性分解。
AC代码:
#include<cstdio> #include<iostream> #include<algorithm> #include<queue> #include<map> #include<vector> #include<set> #include<string> #include<cmath> #include<cstring> #define ll long long #define pb push_back #define pm make_pair using namespace std; const int MAX = 2e5 + 5;int main() {ll n;cin>>n;ll res = 1;for(ll i = 2; i*i <= n; i++) {if(n%i == 0) {res *= i;while(n%i==0) n/=i;}}if(n > 1) res *= n;cout << res;return 0 ;}
总结
以上是生活随笔为你收集整理的【蓝桥杯官网试题 -算法训练】素因子去重(数学,数论,因子约数)的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 申请信用卡详细地址怎么填 这三个地址都要
- 下一篇: 【CodeForces - 518D】I