PTA L1-006 连续因子 (20 分)
2019-05-04 11:22
176 查看
版权声明:转载请附上原文链接哟! https://blog.csdn.net/weixin_44170305/article/details/89811691
如花美眷,似水流年,回得了过去,回不了当初。
一个正整数 N 的因子中可能存在若干连续的数字。例如 630 可以分解为 3×5×6×7,其中 5、6、7 就是 3 个连续的数字。给定任一正整数 N,要求编写程序求出最长连续因子的个数,并输出最小的连续因子序列。
输入格式:
输入在一行中给出一个正整数 N(1<N<231)。
输出格式:
首先在第 1 行输出最长连续因子的个数;然后在第 2 行中按
因子1*因子2*……*因子k的格式输出最小的连续因子序列,其中因子按递增顺序输出,1 不算在内。
输入样例:
[code]630
输出样例:
[code]3 5*6*7
[code]#include<iostream> #include<cstdio> #include<cstring> #include<cmath> #include<algorithm> using namespace std; int main() { long long int n,i,j,k,num=0,x; cin>>n; for (i=2; i<=(long long)sqrt(n); i++) { k=n; for (j=i;; j++) if (k%j==0) k=k/j; else break; if (j-i>num) { num=j-i; x=i; } }//查找能分成的连续因子个数并找到第一个 if (num==0) { num=1; x=n; }//不能分成连续因子 cout<<num<<endl; for (i=x; i<x+num; i++) { cout<<i; if (i==x+num-1) break; cout<<'*'; } return 0; }
相关文章推荐
- PTA L1-006 最小连续因子
- PTA L1-006 连续因子
- L1-006 连续因子 (20 分)
- 团体程序设计天梯赛-练习集 L1-006 连续因子 (20 分)
- L1-006 连续因子 (20 分)
- PTA L1-006 连续因子
- L1-006 连续因子 (20 分)
- 天梯赛-L1-006 连续因子 (20 分)-题解
- L1-006. 连续因子
- L1-006. 连续因子
- 团体程序设计天梯赛-练习集 L1-006. 连续因子 JAVA
- L1-006. 连续因子
- pat L1-006. 连续因子
- 团体程序设计天梯赛-练习集-L1-006. 连续因子
- L1-006. 连续因子
- L1-006. 连续因子
- L1-006. 连续因子
- L1-006. 连续因子
- 天梯赛L1-006. 连续因子
- L1-006. 连续因子