voip
风的方向
厚德致远,博学敦行!
posts - 52,comments - 21,trackbacks - 0

数的计数

Time Limit:1000MS  Memory Limit:65536K
Total Submit:394 Accepted:183

Description

要求找出具有下列性质数的个数(包括输入的自然数n):
先输入一个自然数n( n <= 1000),然后对此自然数按照如下方法进行处理:
(1)不作任何处理
(2)在它的左边加上一个自然数,但该数不能超过原数的一半
(3)加上数后,继续按此处理,直到不能再加自然数为止

Input

多个测试案例,每个测试案例
输入一个自然数n

Output

输出满足以上条件的所有数的个数

Sample Input

6

 

Sample Output

6

 

Hint

对于6,满足条件的数有
6
16
26
126
36
136


         这个题目也贴一下,记得书上也有这么个习题的!!
代码如下:
#include<string.h>
#include
<stdio.h>
int main()
{
    
int s[1001];
    
int i,j,n;
    memset(s,
0,sizeof(s));
    s[
1]=1;
    s[
2]=2;
    
for(i=3;i<1001;i++)
    
{
        
for(j=1;j<=i/2;j++)
        
{
            s[i]
=s[j]+s[i];
        }

        s[i]
++;
    }

    
while(scanf("%d",&n)!=EOF)
    
{
        printf(
"%d\n",s[n]);
    }

    
return 0;
}

posted on 2010-09-16 12:58 jince 阅读(609) 评论(0)  编辑 收藏 引用 所属分类: Questions

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


哈哈哈哈哈哈