您的位置:首页 > 其它

1096. Consecutive Factors

2015-08-30 10:09 447 查看
#include <cstdio>
#include <vector>
#include <cmath>

using namespace std;

vector<int>ans ;

int main(void)
{
int num ;
int i;
scanf("%d" , &num);

for( i = 2 ; i <= num; i ++ )
{
int j ;
int temp = num ;
vector<int>tempAns ;

if( num/i < i ) break ;

for( j = i ; j <= num ; j++)
{
if( temp%j == 0 )
{
temp = temp / j ;

tempAns.push_back(j) ;
continue ;
}
else break ;
}

if( tempAns.size() > ans.size())
{
ans.clear();
ans = tempAns ;
}
}

if( ans.size() == 0 ) ans.push_back(num);

printf("%d\n"  , ans.size());

for( i = 0 ; i < ans.size() - 1 ; i++)
{
printf("%d*" , ans[i]);
}
printf("%d\n" , ans[i]);

return 0 ;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: