题目

有这样一个序列a:
a[0] = 0
a[1] = 1
a[2i] = a[i]
a[2i+1] = a[i] + a[i+1]

输入一个数N,求a[0] - a[n]中最大的数。
a[0] = 0, a[1] = 1, a[2] = 1, a[3] = 2, a[4] = 1, a[5] = 3, a[6] = 2, a[7] = 3, a[8] = 1, a[9] = 4, a[10] = 3。
例如:n = 5,最大值是3,n = 10,最大值是4。

输入

第1行:一个数T,表示后面用作输入测试的数的数量。(1 <= T <= 10)
第2 - T + 1行:T个数,表示需要计算的n。(1 <= n <= 10^5)

输出

共T行,每行1个最大值。

输入样例

2
5
10

输出样例

3
4

思路:根据规律将数组 a[] 打个表,在打表的过程中顺便把前 n 个数的最大值求了,最后直接根据查询输出即可

源程序

#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<string>
#include<cstring>
#include<cmath>
#include<ctime>
#include<algorithm>
#include<utility>
#include<stack>
#include<queue>
#include<vector>
#include<set>
#include<map>
#define E 1e-9
#define PI acos(-1.0)
#define INF 0x3f3f3f3f
#define LL long long
const int MOD=7;
const int N=100000+5;
const int dx[]= {-1,1,0,0};
const int dy[]= {0,0,-1,1};
using namespace std;
int a[N];
int res[N];
void init(){a[0]=0;a[1]=1;res[0]=0;res[1]=1;int maxx=-INF;for(int i=2;i<=1E5;i++){if(i%2==0)a[i]=a[i/2];elsea[i]=a[(i-1)/2]+a[(i-1)/2+1];res[i]=max(res[i-1],a[i]);}
}
int main(){init();int t;scanf("%d",&t);while(t--){int n;scanf("%d",&n);printf("%d\n",res[n]);}return 0;
}

序列中最大的数(51Nod-1062)相关推荐

  1. 51nod 1062 序列中最大的数【打表】

    1062 序列中最大的数 题目来源: Ural 1079 基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题  收藏  关注 有这样一个序列a: a[0] = 0 a[ ...

  2. 51Nod-1062 序列中最大的数【序列计算+打表】

    1062 序列中最大的数 题目来源:Ural 1079 基准时间限制:1秒 空间限制:131072KB 分值:10难度:2级算法题 有这样一个序列a: a[0] = 0 a[1] = 1 a[2i] ...

  3. C语言简单题-求整数序列中出现次数最多的数

    7-2 求整数序列中出现次数最多的数 (15分) 本题要求统计一个整型序列中出现次数最多的整数及其出现次数. 输入格式: 输入在一行中给出序列中整数个数N(0<N≤1000),以及N个整数.数字 ...

  4. 【51nod - 1174 】区间中最大的数(RMQ问题,ST表,模板)

    题干: 给出一个有N个数的序列,编号0 - N - 1.进行Q次查询,查询编号i至j的所有数中,最大的数是多少. 例如: 1 7 6 3 1.i = 1, j = 3,对应的数为7 6 3,最大的数为 ...

  5. JAVA-求整数序列中出现次数最多的数

    R7-3 JAVA-求整数序列中出现次数最多的数 (10 分) 要求统计一个整型序列中出现次数最多的整数及其出现次数. 输入格式: 在一行中给出序列中整数个数N(0<N≤1000),依次给出N个 ...

  6. 7-55 求整数序列中出现次数最多的数 (15 分)

    7-55 求整数序列中出现次数最多的数 (15 分) 本题要求统计一个整型序列中出现次数最多的整数及其出现次数. 输入格式: 输入在一行中给出序列中整数个数N(0<N≤1000),以及N个整数. ...

  7. 将一正整数序列{K1,K2,…,K9}重新排成一个新的序列。新序列中,比K1小的数都在K1的左面(后续的再向左存放),比K1大的数都在K1的右面(后续的再向右存放),从K1向右扫描

    下列程序的功能是:将一正整数序列{K1,K2,-,K9}重新排成一个新的序列.新序列中,比K1小的数都在K1的左面(后续的再向左存放),比K1大的数都在K1的右面(后续的再向右存放),从K1向右扫描. ...

  8. 给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个。

    问题描述 给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个. 输入格式 第一行包含一个数n,表示序列长度. 第二行包含n个正整数,表示给定的序列. 第三个包含一个正整数m,表示询问个数 ...

  9. 求序列中第k小的数_推荐算法序列建模现状

    本篇文章主要是自己记录的相关序列建模.用户行为embedding向量的调研现状. 目录 一.序言 二.序列编码 (a)RNN (b)CNN (c)Attention 三.相关文献 1.attentio ...

最新文章

  1. 计算机用电子表格验证方案,Excel电子表格的验证1.PDF
  2. React模式:集中式PropTypes
  3. linux 双网卡浮动ip,Linux 双网卡绑定一个IP原理及实现
  4. P12 离散控制系统-《Matlab/Simulink与控制系统仿真》程序指令总结
  5. DVWA学习(二)SQL Injection(Blind)
  6. python 服务端性能_python 学习笔记---Locust 测试服务端性能
  7. techempower之Plaintext上7百万RPS
  8. SQL手工注入入门级笔记(更新中)
  9. hsv分别代表什么_猫语大解密!你们知道不同的喵叫声,分别代表什么吗?
  10. 几十种编程语言说Hello World
  11. 经典检索算法:BM25算法
  12. vue-cli3使用vue-router 使用动态路由,在刷新页面时报错
  13. 中本聪往事(一)PGP的密码战争
  14. 三极管9013 9014 跟8050之间有什么区别,
  15. plsql登录Not logged on
  16. python if实现对话_Python生成微信对话生成器(四)
  17. linux-运维进阶-31 OpenSSL实现CA证书
  18. python中shelf对象_shelve -- 用来持久化任意的Python对象
  19. UNI-APP安卓本地打包详细教程(保姆级)
  20. CCNA专业英文词汇全集

热门文章

  1. sql存储过程----备份数据库
  2. [原创]红马版验证码实现(中文+变形+噪点)
  3. 手把手教你获取、编译和调试Flink的源代码
  4. 院士怒批:中国科研被SCI和西方支配,贫于创新、贫于思想
  5. TIOBE 9 月编程语言榜:Python 居然超越了 C++!
  6. LwIP之套接字接口
  7. linux服务器程序开发,怎样搭建一个linux开发服务器
  8. mysql docker还是rds_容器化RDS:计算存储分离还是本地存储?
  9. 2021 年 6 月程序员工资统计,惨不忍睹。。。
  10. 深入掌握JMS(二):一个JMS例子