1059. Prime Factors (25)
来源:互联网 发布:extjs表单设计器源码 编辑:程序博客网 时间:2024/06/03 21:03
Given any positive integer N, you are supposed to find all of its prime factors, and write them in the format N = p1^k1 * p2^k2 *…*pm^km.
Input Specification:
Each input file contains one test case which gives a positive integer N in the range of long int.
Output Specification:
Factor N in the format N = p1^k1 * p2^k2 *…*pm^km, where pi's are prime factors of N in increasing order, and the exponent ki is the number of pi -- hence when there is only one pi, ki is 1 and must NOT be printed out.
Sample Input:97532468Sample Output:
97532468=2^2*11*17*101*1291
将一个正整数分解成质数相乘的形式。
代码:
#include <iostream>#include <cstring>#include <cstdlib>#include <cstdio>#include <cmath>#include <vector>using namespace std;bool isprime(long long n,long long &factor){for(long i=factor;i<=sqrt(n);i++){if(n%i==0){factor=i;return false;}}return true;}int main(){long long n;scanf("%lld",&n);long long save=n;if(n<=3) {printf("%lld=%lld",n,n);return 0;}vector<long long>fac;vector<long long>exp;long long factor=2;while(true){bool flg=isprime(n,factor);if(flg) break;else{fac.push_back(factor);n=n/factor;long long count=1;while(n%factor==0){count++;n=n/factor;}exp.push_back(count);}if(n==1) break;}printf("%lld=",save);for(int i=0;i<fac.size();i++){printf("%lld",fac[i]);if(exp[i]>=2) printf("^%lld",exp[i]);if(i<fac.size()-1) printf("*");}if(n!=1) printf("*%lld",n);}
0 0
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- 1059. Prime Factors (25)
- JAVA学习笔记之IO详解一
- Socket通信
- TCP通信(二)——异步连接
- 字符串——替换字符串中连续出现的指定字符串
- 一个程序员的进化史-第九章
- 1059. Prime Factors (25)
- BZOJ1009 [HNOI2008]GT考试
- HTML iframe 用法小总结
- java设计模式之单例模式
- Spark Scheduler模块源码分析之TaskScheduler和SchedulerBackend
- C++应用程序性能优化——C++语言特性
- SEAndroid 策略(灰常重要)
- Android安全小知识
- Android系统的体系架构