文章
2
粉丝
489
获赞
2
访问
22.8k
#include<stdio.h>
int p(int a[],int n)
{static int i=0;
if(n==0) {a[i]=i;return(a[i]);}
else {a[i]=n%2;
n=n/2;
i++;
return(p(a,n));}
}
int o(int x,int s[])
{static int i=0,n;
if(s[i]>1) n=0;
else {i++;n=s[x-i]+o(x,s)*2;}
return(n);
}
int main()
{int a[100],n,x;
scanf("%d",&n);
x=p(a,n);
n=o(x,a);
printf("%d",n);
return 0;
}
登录后发布评论
仔细看题。题目说是一千位,这是大数。得用字符数组。不能用int 型
这个题的输入数据范围很大,不是int或者long long能够解决的,他是一个大数。
参考下面这个代码
思路分析