题目描述
要求找出具有下列性质数的个数(包括输入的自然数n):
先输入一个自然数n( n <= 1000),然后对此自然数按照如下方法进行处理:
(1)不作任何处理
(2)在它的左边加上一个自然数,但该数不能超过原数的一半
(3)加上数后,继续按此处理,直到不能再加自然数为止
输入
多个测试案例,每个测试案例为一个自然数n。
输出
输出满足以上条件的所有数的个数
样例输入
6
样例输出
6
提示
对于6,满足条件的数有
6
16
26
126
36
136
#include<iostream>
using namespace std;
void f(int m );
int c=0;
int main()
{
int x;
while(cin>>x)
{
f(x);
cout<<c<<endl;
c=0;
}
return 0;
}
void f(int m )
{
c++;
if(m>=2)
{
for(int i=1;i<=m/2;i++)
{
f(i);
}
}
}