UVA 10479 The Hendrie Sequence
https://vjudge.net/problem/UVA-10479
打表找规律:

1、根据n可以确定第n项在上表中第i行
2、减去前i-1行,就得到了n在第i行的第j个
3、第i行的规律:1个i-2行,2个i-3行,3个i-4行……
转化为子问题继续下去
#include<cstdio>
#include<iostream>
using namespace std;
typedef unsigned long long LL;
LL bit[],z[];
int main()
{
LL n,sum;
int r,num,cnt;
for(LL i=;i<=;i++) bit[i]=1ll<<i;
z[]=z[]=;
for(int i=;i<=;i++) z[i]=z[i-]<<;
while(cin>>n)
{
if(!n) return ;
int i;
for(i=;;i++)
if(bit[i]>n) break;
n-=bit[i-];
if(!n) { printf("%d\n",i-); continue;}
r=i;
while(n)
{
if(r==) { printf("0\n"); break; }
if(r==) { printf("1\n"); break; }
sum=;
for(num=r-,cnt=;num>=;num--,cnt++)
if(sum+z[num]*cnt>=n) break;
else sum+=z[num]*cnt;
n-=sum;
while(cnt && n>=z[num]) n-=z[num],cnt--;
if(!n) printf("%d\n",num);
r=num;
}
}
}
UVA 10479 The Hendrie Sequence的更多相关文章
- UVA 1546 - Complete the sequence!(差分法)
		
UVA 1546 - Complete the sequence! 题目链接 题意:给定多项式前s项,求出后c项,要求尽量小 思路:利用差分法,对原序列求s - 1次差分,就能够发现规律,然后对于每多 ...
 - UVA 10534	三 Wavio Sequence
		
Wavio Sequence Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Submit Sta ...
 - UVa 694 - The Collatz Sequence
		
https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=94&page=s ...
 - UVA - 348Optimal Array Multiplication Sequence(递推)
		
id=19208">题目:Optimal Array Multiplication Sequence 题目大意:给出N个矩阵相乘.求这些矩阵相乘乘法次数最少的顺序. 解题思路:矩阵相乘 ...
 - UVa 1626 (输出方案) Brackets sequence
		
正规括号序列定义为: 空序列是正规括号序列 如果S是正规括号序列,那么[S]和(S)也是正规括号序列 如果A和B都是正规括号序列,则AB也是正规括号序列 输入一个括号序列,添加尽量少的括号使之成为正规 ...
 - 【UVA】1594 Ducci Sequence(纯模拟)
		
题目 题目 分析 真的快疯了,中午交了一题WA了好久,最后发现最后一个数据不能加\n,于是这次学乖了,最后一组不输出\n,于是WA了好几发,最后从Udebug发现最后一组是要输出的!!! ...
 - UVA 1594:Ducci Sequence (模拟 Grade E)
		
题意: 对于一个n元组(a0,a1,...),一次变换后变成(|a0-a1|,|a1-a2|,...) 问1000次变换以内是否存在循环. 思路: 模拟,map判重 代码: #include < ...
 - uva 10479(找规律+递归)
		
题意:有一个初始序列第一个数字是0. 规律是把前一次推出来的每个数字x.先接x个0,然后接x+1. 0 –> 1 –> 02 –> 1003 –> 02110004 那么这个序 ...
 - 紫书 习题 10-22 UVa 10479 (找规律)
		
自己一直在纠结这个串的构造方法 而没有观察串本身的规律-- 2的63次方用 unsigned long long 然后可以发现串是递归构造的. 将串分成1,1,2,4,8,16, 然后会发现s串里面1 ...
 
随机推荐
- Alpha发布——视频博客
			
1.视频链接 视频上传至优酷自频道,地址链接:https://v.youku.com/v_show/id_XMzg5MzQ4MzM2MA==.html?spm=a2h0k.11417342.sores ...
 - 软件工程课堂练习——找出1-n中1出现的个数
			
题目:给定一个十进制的正整数,写下从1开始,到N的所有整数,然后数一下其中出现“1”的个数. 要求:写一个函数 f(N) ,返回1 到 N 之间出现的 “1”的个数.例如 f(12) = 5. 在3 ...
 - Python 变量和常量及数据类型
			
一.变量的命名 变量由字母.数字和下划线组成.变量的第1个字符必须是字母或下划线. 二.变量的赋值 例: x = 1 三.局部变量 局部变量只能在函数或者代码段内使用. 四.全局变量 在函数之外定义的 ...
 - 团队Alpha冲刺(九)
			
目录 组员情况 组员1(组长):胡绪佩 组员2:胡青元 组员3:庄卉 组员4:家灿 组员5:凯琳 组员6:翟丹丹 组员7:何家伟 组员8:政演 组员9:黄鸿杰 组员10:刘一好 组员11:何宇恒 展示 ...
 - Java微笔记(5)
			
final关键字 super关键字
 - POJ 1971 Parallelogram Counting
			
题目链接: http://poj.org/problem?id=1971 题意: 二维空间给n个任意三点不共线的坐标,问这些点能够组成多少个不同的平行四边形. 题解: 使用的平行四边形的判断条件:对角 ...
 - 安装Ubuntu 16.04双系统详解(Nvidia显卡)
			
Ubuntu16.04双系统安装 一.准备工作 设备:惠普台式机,i5-7400.8G内存.1T机械硬盘.NVIDIA GTX1050显卡.预装系统:Win10. 1.下载ubuntu镜像文件,本人使 ...
 - C#中委托的理解
			
请注意,这只是个人关于C#中委托的一点点理解,参考了一些博客,如有不周之处,请指出,谢谢! 委托是一种函数指针,委托是方法的抽象,方法是委托的实例.委托是C#语言的一道坎,明白了委托才能算是C#真正入 ...
 - spring重定向与转发
			
1.重定向 A,通过ModelAndView以及RedirectView @RequestMapping("/login1.do") public ModelAndView log ...
 - HTML&CSS实体
			
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...