http://acm.hdu.edu.cn/showproblem.php?pid=5694

可以说这道题目挺考验思维含量的吧

首先,这个和数位dp是差不多的方法,计算cal(l)-cal(l-1);

然后我们可以得出,每次在2^n的时候都是要+1,然后我们计算出rest。

例如BBDBBDD B BBDDBDD 我们令R = 12,然后可以得出rest = 5,但是中间的这个B是没有啥用的,那么我们就让rest = 4,并且ans+1即可。然后记住rest = 之前的长度中的后面的rest个数字,因此假定rest之前的长度为m,那么我们就只要dfs(m) - dfs(m - rest)即可

 #include<bits/stdc++.h>
using namespace std; typedef long long ll;
const ll inf = 1e18;
ll l, r; ll dfs(ll x){
if (x == ) return ;
ll m = , ans = , rest = ;
while (m * + < x) m = m * + ;
ans = (m + ) / ;
rest = x - m - ;
//printf("m = %lld\n", m);
return ans + rest - (ans - dfs(m - rest)) + ;
} int main(){
int t; scanf("%d", &t);
while (t--){
cin >> l >> r;
printf("%lld\n", dfs(r) - dfs(l - ));
}
return ;
}

BD string 百度之星初赛的题目 数学的更多相关文章

  1. 2016百度之星 初赛2A ABEF

    只做了1001 1002 1005 1006.剩下2题可能以后补? http://acm.hdu.edu.cn/search.php?field=problem&key=2016%22%B0% ...

  2. HDU 5690:2016"百度之星" - 初赛 All X

    原文链接:https://www.dreamwings.cn/hdu5690/2657.html All X Time Limit: 2000/1000 MS (Java/Others)    Mem ...

  3. 2016"百度之星" - 初赛(Astar Round2A)HDU 5695 拓扑排序+优先队列

    Gym Class Time Limit: 6000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total S ...

  4. 数学 2015百度之星初赛2 HDOJ 5255 魔法因子

    题目传送门 /* 数学:不会写,学习一下这种解题方式:) 思路:设符合条件的数的最高位是h,最低位是l,中间不变的部分为mid,由题意可得到下面的公式(这里对X乘上1e6用a表示,b表示1e6) (h ...

  5. LIS 2015百度之星初赛2 HDOJ 5256 序列变换

    题目传送门 题意:中文题面 分析:LIS(非严格):首先我想到了LIS,然而总觉得有点不对:每个数先减去它的下标,防止下面的情况发生:(转载)加入序列是1,2,2,2,3,这样求上升子序列是3,也就是 ...

  6. Kruskal 2015百度之星初赛2 HDOJ 5253 连接的管道

    题目传送门 /* 最小生成树(Kruskal):以权值为头,带入两个端点,自然的排序;感觉结构体的并查集很好看 注意:题目老头要的是两个农田的高度差,中文水平不好,题意理解成和平均值的高度差! */ ...

  7. BFS 2015百度之星初赛2 HDOJ 5254 棋盘占领

    题目传送门 /* BFS:先把1的入队,每个1和它相邻的组合后看看能不能使0变1,若有则添加入队,change函数返回改变了多少个0 注意:结果还要加上原来占领的 */ #include <cs ...

  8. 二分搜索 2015百度之星初赛1 HDOJ 5248 序列变换

    题目传送门 /* 二分搜索:在0-1e6的范围找到最小的max (ai - bi),也就是使得p + 1 <= a[i] + c or a[i] - c 比赛时以为是贪心,榨干智商也想不出来:( ...

  9. 二分查找 2015百度之星初赛1 HDOJ 5246 超级赛亚ACMer

    题目传送门 /* 二分找到不大于m的最大的数,记做p,只要a[p] + k <= a[p+1]就继续 注意:特判一下当没有比m小的数的情况:) */ #include <cstdio> ...

随机推荐

  1. 正则表达式:reg.test is not a function

    正则中 比如 var reg = "/^[0-9]$/" 会报 reg.test is not a function 如果 var reg = /^[0-9]$/ 就不会有错 因为 ...

  2. Merge Into 用法

    从一个数据库的一张表同步数据到另外一个数据库的一张表,同步的数据不是insert就是update. 一般做法是先判断当前数据在另外一张表存不存在,存在则更新,不存在则插入.需要一次查询判断:exist ...

  3. iOS image caching. Libraries benchmark (SDWebImage vs FastImageCache)

    http://www.cocoachina.com/ios/20150128/11053.html 1.引言 过去的几年里,iOS应用在视觉方面越来越吸引人.图像展示是其中很关键的部分,因为大部分图像 ...

  4. 关于Linode、Digitalocean、Vultr三款美国VPS服务商的用户体验

    曾几何时,虽然我们在海外VPS服务商中也可以看到各种大大小小的商家,但是真正能让Linode这样高富帅有竞争力的还真不多,这不当初在Linode商家512MB内存方案卖20美元一个月的时候,还是有很多 ...

  5. c语言_代码段_快说你是猪

    /* 项目:快说你是猪 作者:landv 时间:2014年3月12日 编译环境:VS2013 */ #pragma warning(disable:4996) //全部关掉 #pragma warni ...

  6. C++中复制构造函数和赋值操作符

    先看一个例子: 定义了一个类:

  7. hdu_5763_Another Meaning(dp)

    题目链接:hdu_5763_Another Meaning 题意: 一个文本串A,一个模式串B,如果文本串含有模式串B,那么就能组合成多种意思,如下: In the first case, “ heh ...

  8. cmstop传递什么控制器和方法---就实例化该控制器

    object顶级类class object 第一级抽象类controllerabstract class controller extends object 第二级抽象类controller_abst ...

  9. 如何使用 AngularJS 的 ngShow 和 ngHide

    今天我们来看看怎样使用Angular的ngShow 和ngHide 指令来完成它们听起来应该完成的,显示和隐藏! 它们应该做的事 ngShow 和ngHide 允许我们显示或隐藏不同的元素.这有助于创 ...

  10. MySQL-测试卷一

    MySQL-测试卷一 一.单项选择题 1 下面不属于Msql数据库特点的是(  ) A. 免费使用  B.不能跨平台  C.开源软件  D.功能强大 2 定义表的一个字段, 要求能表示4位整数,2位小 ...