题目链接:http://ybt.ssoier.cn:8088/problem_show.php?pid=1410
1 #include<iostream> 2 using namespace std; 3 int m,n; 4 bool iss(int y) 5 { 6 for(int j=2;j*j<=y;j++) 7 { 8 if(y%j==0)return false; 9 } 10 return true; 11 } 12 //注意上下两个函数先后顺序不能颠倒。。切记切记!! 13 void zym(int x) 14 { 15 int mx=0; 16 for(int i=2;i<=x;i++) 17 { 18 if(x%i==0&&iss(i)&&i>mx)mx=i;//求最大质因数 19 } 20 cout<<mx; 21 if(x!=n)cout<<",";//最后一个质因数没有逗号 22 } 23 24 int main() 25 { 26 cin>>m>>n; 27 for(int i=m;i<=n;i++)zym(i); 28 return 0; 29 }