每个正整数都可以被分解为 n 个质因数的乘积,下面输入正整数 n,请你求出 n 的质因数分解式,如果有重复的质因数则将 * 号改为 ^ 号, * 号左右加空格。
一个正整数 n
n 的质因数分解式
20
2^2 * 5
6
2 * 3
23
23
- #include
- #include
- #define ll long long
- using namespace std;
-
- bool zs(int x)
- {
- if(x == 1)
- return false;
-
- for(int i = 2; i * i <= x; i++)
- {
- if(x % i == 0)
- return false;
- }
-
- return true;
- }
-
- int main()
- {
- int n, t;
- cin>>n;
- bool cf = true;
- for(int i = 2; i <= n; i++)
- {
- bool first = false;
- bool in = false;
- while (n % i == 0 && zs(i))
- {
- n /= i;
- if (!first)
- {
- if(n % i != 0 && !cf)
- {
- cout<<"*"<
- }
- if(cf)
- {
- cout<
- cf = false;
- }
- }
- else
- {
- cout<<"^"<
- cf = false;
- }
- first = true;
- }
- }
-
- return 0;
- }
-
相关阅读:
windows上下载github上的linux内核项目遇到的问题
原型链污染攻击
Linux操作系统资源(持续更新...)
Java面试题总结(一)
盲盒网站遭遇DDoS攻击,高防ip是如何起到安全防护的?
SpringBoot自动配置(装配)流程
练习题37:命名空间练习
MICCAI 2022:基于 MLP 的快速医学图像分割网络—UNeXt
教你制作微信公众号天气推送服务
django+xadmin 在线教育网站(三)
-
原文地址:https://blog.csdn.net/panpanpan17452/article/details/133740727