【C++】PAT(advanced level)1059. Prime Factors (25)
2014-03-12 22:49
435 查看
1059. Prime Factors (25)
时间限制50 ms
内存限制
32000 kB
代码长度限制
16000 B
判题程序
Standard
作者
HE, Qinming
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:
97532468
Sample Output:
97532468=2^2*11*17*101*1291
1.好吧, 乱写的,但是过了就不管了。
//#include<stdio.h> #include<iostream> #include<algorithm> #include<string> #include<string.h> #include<vector> #include<map> //#include<iomanip> using namespace std; int main(){ //freopen("in.txt","r",stdin); long int m,mt; map <int,int> pr; map<int,int>::iterator it; scanf("%ld",&m); mt=m; bool ff=false; while(true){ int p=2; while(true){ if(p*p>m){ ff=true; pr[m]++; break; } if(m%p==0){ pr[p]++; m=m/p; break; } p++; } if(ff){ break; } } cout<<mt<<"="; bool flag=true; for(it=pr.begin();it!=pr.end();it++){ if(flag){ flag=false; }else{ cout<<"*"; } cout<<(*it).first; if((*it).second!=1){ cout<<"^"<<(*it).second; } } //fclose(stdin); system("pause"); return 0; }
相关文章推荐
- 1059. Prime Factors (25)【素数】——PAT (Advanced Level) Practise
- PAT (Advanced Level) Practise 1059 Prime Factors (25)
- 【PAT】【Advanced Level】1059. Prime Factors (25)
- PAT (Advanced Level) Practise 1059 Prime Factors (25)
- 【C++】PAT(advanced level)1071. Speech Patterns (25)
- 【C++】PAT(advanced level)1025. PAT Ranking (25)*
- 【c++】PAT (Advanced Level) 1007. Maximum Subsequence Sum (25)*
- 【C++】PAT(advanced level)1047. Student List for Course (25)
- 【C++】PAT(advanced level)1040. Longest Symmetric String (25)
- 【C++】PAT(advanced level)1032. Sharing (25)
- 【C++】PAT(advanced level)1036. Boys vs Girls (25)
- 【C++】PAT(advanced level)1051. Pop Sequence (25)
- 【C++】PAT (advanced level)1074. Reversing Linked List (25)
- Pat(Advanced Level)Practice--1059(Prime Factors)
- 【C++】PAT(advanced level)1028. List Sorting (25)
- 【C++】PAT (advanced level)1062. Talent and Virtue (25)
- 【c++】PAT (Advanced Level)1010. Radix (25)
- 【C++】PAT(advanced level)1029. Median (25)
- 【C++】PAT(advanced level)1055. The World's Richest (25)*
- PAT (Advanced Level) 1059. Prime Factors (25) 求所有质因子