题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5587

解题思路:

首先可以预处理第i天有多少个数以及前i天的数之和。

接下来就可以先二分找到最大的天数t,使其得到的数小于m,接下来就是如何求出多余的一截了。

这个地方卡了好久。。。一直没想到怎么处理好,其实可以用dfs去搜出来的。因为这里的数列是循环的,所以可以把它递归到最早的数列中。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;typedef long long LL;
LL m,day[100],sum[100];void init()
{day[1] = 1;sum[1] = 1;for(int i = 2; i <= 63; i++) day[i] = day[i-1] * 2 + 1;for(int i = 2; i <= 63; i++) sum[i] = sum[i-1] * 2 + day[i-1] + 1;
}LL dfs(LL x)
{if(x <= 1) return x;int pos = lower_bound(day+1,day+1+63,x) - day;if(day[pos] == x) return sum[pos];return sum[pos-1] + dfs(x - day[pos-1] - 1) + x - day[pos-1];
}int main()
{int t;scanf("%d",&t);init();while(t--){scanf("%lld",&m);printf("%lld\n",dfs(m));}return 0;
}

hdu 5587(数学规律)相关推荐

  1. 【算法学习笔记】73.数学规律题 SJTU OJ 1058 小M的机器人

    Description 小M有很多个机器人,他们要么一直说真话,要么一直说假话. 然后每个人都说: (1). 不到N个人比我工作得多 (2). 至少M个人的工资比我高. 保证没有两个人的工作一样重,也 ...

  2. UVA11774 Doom‘s Day【数学规律+GCD】

    We all know about the legend of tower of Hanoi. It is said that the world will end after finishing t ...

  3. UVA10162 Last Digit【数学规律】

    Give you a integer number N (1 ≤ n ≤ 2 ∗ 10100). Please compute S = 11 + 22 + 33 + . . . + NN Give t ...

  4. UVA10025 The ? 1 ? 2 ? ... ? n = k problem【数学规律】

    Given the following formula, one can set operators '+' or '-' instead of each '?', in order to obtai ...

  5. 用Python解中考数学规律题

    用Python解中考数学规律题 以下为2018成都市的中考数学真题B卷第23题: 分析:   一.这是一道常规的找规律考题,一般每年的中考数学都会涉及,根据题的难易程度,位置一般会出现在B卷的第二题, ...

  6. 1235813找规律第100个数_2018年中考数学规律探索题(中考找规律题目-有答案)

    <2018年中考数学规律探索题(中考找规律题目-有答案)>由会员分享,可在线阅读,更多相关<2018年中考数学规律探索题(中考找规律题目-有答案)(16页珍藏版)>请在金锄头文 ...

  7. GCD XOR UVA - 12716 ——筛法建立约数表+xor运算+数学规律

    Think: 1埃式筛法思想建立约数表 2初始打表寻找运算的数学规律 3xor运算(不带进位的二进制加法) 运算法则 1. a ⊕ a = 0 2. a ⊕ b = b ⊕ a 3. a ⊕b ⊕ c ...

  8. 【LeetCode】﹝数学规律ி﹞第N位数字、可怜的小猪

    [LeetCode]﹝数学规律ி﹞第N位数字.可怜的小猪 文章目录 [LeetCode]﹝数学规律ி﹞第N位数字.可怜的小猪 乐团站位★ 罗马数字转整数★ 整数转罗马数字★★ 第 N 位数字★★ 数字 ...

  9. 快乐数之数学规律解题

    数学规律解决快乐数 题目 编写一个算法来判断一个数 n 是不是快乐数. 「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这 个过程直到这个数变为 1,也可能是 ...

最新文章

  1. Linux驱动修炼之道-SPI驱动框架源码分析(上)
  2. React开发(178):ant design table基础用法
  3. ruby 执行函数_Ruby at()函数
  4. 【Java】使用前准备工作配置环境变量
  5. 怎么关闭电脑开机自动启动的程序_软件自动开启很烦人?如何彻底关掉Mac电脑开机自动开启的应用程序?...
  6. React 事件处理函数
  7. 打开,另存为,属性,打印等14个JS代码
  8. 5S管理跟精益生产的关系是什么?如何使5S管理有效落地?
  9. 中国绿色专利分地区统计数据
  10. 旋转跳跃加后空翻,波士顿动力机器人Atlas的“变态程度”又升级了
  11. 计算机考试记事本创建文件,你可能永远不知道的记事本功能
  12. NTC电阻短路(高温)电池未停止充电分析
  13. 【操作系统】操作系统的发展历程——手工阶段、批处理阶段、分时操作系统、实时操作系统
  14. 中国「人造太阳」1.2亿摄氏度持续百秒,5倍时长打破可控核聚变世界纪录
  15. 怎么在Vc中打开MySQL数据库_在vc++中使用mysql数据库_MySQL
  16. 解决网页文字不能复制的方法
  17. sheng的学习笔记-平衡二叉树(AVL)和3+4重构
  18. 域控服务器错误事件解决方法,求大神帮忙,域控总有事件报错,事件ID:1864 - winServer论坛 - 51CTO技术论坛_中国领先的IT技术社区...
  19. 最小绝对偏差(LAD)
  20. my97datepicker日历展示出现中文乱码

热门文章

  1. 2021 跨境电商发展关键词:品牌化、独立站、多渠道精细化
  2. 深度案例 | 微车:数据驱动价值,建立 1.3 亿车主的汽车生活平台
  3. Netty - 传输
  4. Java中String和byte[]间的转换浅析
  5. 我的产品需求说明文档模板(PRD)
  6. 写在《30天自制操作系统》上市之前
  7. exchange 2010 集线器(hub)外发邮件的配置
  8. r graphics installing package
  9. things to be done
  10. 编写安全的代码(ACL使用方法)