第六章 函数-1410:最大质因子序列

1410:最大质因子序列

时间限制: 1000 ms 内存限制: 65536 KB
提交数: 5967 通过数: 4031
【题目描述】
任意输入两个正整数m,n(1

【输入】
一行,包含两个正整数m和n,其间以单个空格间隔。

【输出】
一行,每个整数的最大质因子,以逗号间隔。

【输入样例】
5 10
【输出样例】
5,3,7,2,3,5


思路:定义判断素数的函数,从m枚举到n,从小到大找每个数的最大质因子,找到最大质因子.

#include
#include
using namespace std;
int n,m,a,b;
bool ss(int x){//判断素数的函数
	int j = 2;
	while(j * j <= x && x%j != 0)
	++j;
	return j * j > x;
}
int main(){
	scanf("%d%d",&m,&n);
	for(int i = m;i <= n;i++)//从m枚举到n
	for(int j = i;j >= 2;--j)//从小到大找每个数的最大质因子
	if(i%j == 0 && ss(j))//找到最大质因子
  {
  	printf("%d",j);
  	if(i != n)//逗号的处理。
  	printf(",");
  	break;
  }
	return 0;
}

你可能感兴趣的:(信息学C++,一本通)