1106: 找第K位数
1.描述
一个由10的幂升序组成的无穷序列。这个序列的开头是:110100100010000100000…… 输入K(K<231),表示序列中的位置,请你找出在这个无穷序列中K位置上的数字
输入
第一行m表示有m组测试数据; 每一组测试数据输入一整数k(0
输出
输出每组测试数据的结果;
样例输入
3
1
1
3
样例输出
1
1
0
2.代码
#include <stdio.h>
int main()
{
int n,i,j,x=0,k=1;
int a[250];
a[0]=1;
scanf("%d",&n);
while(n--)
{
scanf("%d",&j);
while(k<232)
{
a[k]=0;
k++;
}
k=1;
while(x<235)
{
x+=k;
a[x]=1;
k++;
}
printf("%d\n",a[j-1]);
}
return 0;
}