[2016-05-11][51nod][1087 1 10 100 1000]

  • 时间:2016-05-11 14:03:56 星期三

  • 题目编号:[2016-05-11][51nod][1087 1 10 100 1000]

  • 题目大意:1,10,100,1000…组成序列1101001000…,求这个序列的第N位是0还是1。

  • 分析:第(k+1)×k2+1=n的时候,n位置的数字为1

  1. #include<stdio.h>
  2. #include<math.h>
  3. using namespace std;
  4. int main(){
  5. int t;
  6. scanf("%d",&t);
  7. while(t--){
  8. int n;
  9. scanf("%d",&n);
  10. int k = sqrt(double((n - 1) * 2 + 1.0 / 4)) - 0.5;
  11. if(k * (k + 1) == (n - 1) * 2){
  12. puts("1");
  13. }else puts("0");
  14. }
  15. return 0;
  16. }


来自为知笔记(Wiz)


posted on 2016-05-11 14:06  红洋  阅读(260)  评论(0编辑  收藏  举报

导航