51NOD 1087 1 10 100 1000
2015-12-27 13:34
417 查看
1087 1 10 100 1000
题目来源: Ural 1209
基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题
收藏
关注
1,10,100,1000...组成序列1101001000...,求这个序列的第N位是0还是1。
Input
Output
Input示例
Output示例
判断1出现的位置,满足通式f(n)=(n-1)*n/2+1,利用简单打表法可过!
题目来源: Ural 1209
基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题
收藏
关注
1,10,100,1000...组成序列1101001000...,求这个序列的第N位是0还是1。
Input
第1行:一个数T,表示后面用作输入测试的数的数量。(1 <= T <= 10000) 第2 - T + 1行:每行1个数N。(1 <= N <= 10^9)
Output
共T行,如果该位是0,输出0,如果该位是1,输出1。
Input示例
3 1 2 3
Output示例
1 1 0
判断1出现的位置,满足通式f(n)=(n-1)*n/2+1,利用简单打表法可过!
#include <stdio.h> #include <string.h> #include <stdlib.h> #define N 100000 int main(){ int t,i; int n,a[N+1],flag; for(i=0;i<=N;i++) { a[i]=(i*(i-1))/2+1; } while(scanf("%d",&t)!=EOF){ while(t--){ scanf("%d",&n); flag=0; for(i=1;i<=N;i++){ if(a[i]==n) { printf("1\n"); break; } if(a[i]>n){ flag=1; break; } } if(flag==1) printf("0\n"); } } return 0; }
相关文章推荐
- 教你简单识别某些砍价活动的真伪!!!
- HTML中的颜色及名称
- 设计模式——代理VS中介者
- LLdb篇2教你使用faceBook的chisel来提高调试效率
- CommunicationsException: Communications link failure
- 原生js表单验证代码
- 正则表达式的贪婪与懒惰
- 医院业务系统设计(一) --- 开篇
- Unity3D-微信-飞机大战-项目经过
- POJ1015 Jury Compromise dfs的实现
- 深入理解linux操作系统中的高端内存
- HTML中的特殊符号
- [leetcode] 228. Summary Ranges 解题报告
- C#程序调用cmd执行命令-MySql备份还原
- Python 线程(threading) 进程(multiprocessing)
- android读取系统相册,设置头像
- Redis生存时间
- 【Java EE 学习 79 上】【mybatis 基本使用方法】
- Android Animation初识
- 程序员必知必会的10道算法