除法(aoj)
作者:互联网
小可可进入了小学三年级,开始学习除法,一开始学习余数为 0 的除法,后来又学
习了余数不为 0 的除法。
小可可数学很好,对被除数、除数、商、余数都弄得很清楚。有一天,他在思考这
样的一个问题:给一个正整数 n 作为被除数,除数 k 可以取任意正整数,那么商有多少
个不同的值呢?
例如:被除数 n=5,无论除数 k 取任何正整数,商只有 4 个不同的值,分别为 0, 1,
2, 5,因为 5÷6 = 0…5,5÷5=1…0,5÷4=1…1,5÷3=1…2,5÷2=2…1,5÷1=5…0。
小可可最近有点忙,他把这个问题交给了你。
#include<bits/stdc++.h>
using namespace std;
int main(){
int n;
cin>>n;
while(n--)
{
int m,res;
cin>>m;
int s=sqrt(m);
if(s*(s+1)>m){
res=s*2;
cout<<res<<endl;
for(int i=0;i<=s;i++)
cout<<i<<' ';
for(int i=s-1;i>0;i--)
cout<<m/i<<' ';
}
else{
res=s*2+1;
cout<<res<<endl;
for(int i=0;i<=s;i++)
cout<<i<<' ';
for(int i=s;i>0;i--)
cout<<m/i<<' ';
}
cout<<endl;
}
return 0;
}
标签:int,aoj,--,余数,除法,被除数,除数 来源: https://blog.csdn.net/b755567523/article/details/121454261