1.猴子吃枣
#include<bits/stdc++.h>
using namespace std;
void zaozi(int x,int day)
{
int n=0;
if(n==day)
cout<<x;
else
{
zaozi((x+1)*2,day-1);
}
}
int main()
{
zaozi(1,10);
return 0;
}
2 三齿轮问题
辗转相除法,先求最大公因数,再求最小公倍数。
#include<bits/stdc++.h>
using namespace std;
int max_public_num(int a,int b)
{
int t;
if(a<b)
{
t=a;
a=b;
b=t;
}
while(a%b==0)
return b;
return max_public_num(b,a%b);
}
int main()
{
int a,b,c;
cin>>a>>b>>c;
int public_number=max_public_num((a,b),c);
int min_number=a*b*c/public_number;
cout<<min_number/a<<" "<<min_number/b<<" "<<min_number/c;
return 0;
}
3 整数因子分解问题
#include<bits/stdc++.h>
using namespace std;
int sum;
int fenjie(int x)
{
if(x<=1)
return 0;
else
{
for(int i=x-1;i>1;i--)
{
if(x%i==0)
{
sum++;
fenjie(x/i);
}
}
return sum;
}
}
int main()
{
int n;
cin>>n;
cout<<fenjie(n)+1;
return 0;
}
<