欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

连续因子

程序员文章站 2022-03-13 21:25:55
...

连续因子

//连续因子最长&最小
/*注:630 = 3 * 5 * 6 * 7,选的5,6,7也就是说选的连续因子的乘积还是这个数的约数*/ 
#include <bits/stdc++.h>
using namespace std;

long long n;
int main(){
	ios::sync_with_stdio(0);
	cin >> n;
	int len = 1;
	long long i,yz = n,j,sum;	
	for( i = 2; i <= sqrt(n); i++){
		if(n % i == 0){
			sum = i;
			if(len == 1 && i < yz) yz = i; 
			for(j = i + 1;sum * j <= n;j++){
				sum *= j;
			//	cout << i << "   " << sum << endl;
				if(n % j || n % sum) break;
			    if(len < j - i + 1){
				    len = j - i + 1;
				    yz = i;
			   }
		    }
		}
	}
	cout << len << endl;

	for(i = yz; i < yz + len; i++){
		if(i != yz + len - 1)cout << i << "*";
		else cout << i << endl;
	}
	return 0;
} 
相关标签: 天梯赛