21:最大质因子序列
描述
任意输入两个正整数m, n (1 < m < n <= 5000),依次输出m到n之间每个数的最大质因子(包括m和n;如果某个数本身是质数,则输出这个数自身)。
输入一行,包含两个正整数m和n,其间以单个空格间隔。输出一行,每个整数的最大质因子,以逗号间隔。样例输入
5 10
样例输出
5,3,7,2,3,5
来源元培-From Whf
1 #include <bits/stdc++.h> 2 using namespace std; 3 int a,b; 4 bool ss(int n) 5 { 6 if(n==2) return true; 7 for(int i=2;i<=sqrt(n);i++) 8 if(n%i==0) return false; 9 return true; 10 } 11 void j(int n) 12 { 13 for(int i=1;i<=n;i++) 14 { 15 if(n%i==0&&ss(n/i)==true) 16 { 17 printf("%d",n/i); 18 if(n!=b)printf(","); 19 return; 20 } 21 } 22 } 23 int main() 24 { 25 scanf("%d%d",&a,&b); 26 for(int i=a;i<=b;i++) 27 j(i); 28 return 0; 29 }
时间: 2024-10-13 09:39:44