BD string 百度之星初赛的题目 数学
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 百度之星初赛的题目 数学的更多相关文章
- 2016百度之星 初赛2A ABEF
只做了1001 1002 1005 1006.剩下2题可能以后补? http://acm.hdu.edu.cn/search.php?field=problem&key=2016%22%B0% ...
- HDU 5690:2016"百度之星" - 初赛 All X
原文链接:https://www.dreamwings.cn/hdu5690/2657.html All X Time Limit: 2000/1000 MS (Java/Others) Mem ...
- 2016"百度之星" - 初赛(Astar Round2A)HDU 5695 拓扑排序+优先队列
Gym Class Time Limit: 6000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total S ...
- 数学 2015百度之星初赛2 HDOJ 5255 魔法因子
题目传送门 /* 数学:不会写,学习一下这种解题方式:) 思路:设符合条件的数的最高位是h,最低位是l,中间不变的部分为mid,由题意可得到下面的公式(这里对X乘上1e6用a表示,b表示1e6) (h ...
- LIS 2015百度之星初赛2 HDOJ 5256 序列变换
题目传送门 题意:中文题面 分析:LIS(非严格):首先我想到了LIS,然而总觉得有点不对:每个数先减去它的下标,防止下面的情况发生:(转载)加入序列是1,2,2,2,3,这样求上升子序列是3,也就是 ...
- Kruskal 2015百度之星初赛2 HDOJ 5253 连接的管道
题目传送门 /* 最小生成树(Kruskal):以权值为头,带入两个端点,自然的排序;感觉结构体的并查集很好看 注意:题目老头要的是两个农田的高度差,中文水平不好,题意理解成和平均值的高度差! */ ...
- BFS 2015百度之星初赛2 HDOJ 5254 棋盘占领
题目传送门 /* BFS:先把1的入队,每个1和它相邻的组合后看看能不能使0变1,若有则添加入队,change函数返回改变了多少个0 注意:结果还要加上原来占领的 */ #include <cs ...
- 二分搜索 2015百度之星初赛1 HDOJ 5248 序列变换
题目传送门 /* 二分搜索:在0-1e6的范围找到最小的max (ai - bi),也就是使得p + 1 <= a[i] + c or a[i] - c 比赛时以为是贪心,榨干智商也想不出来:( ...
- 二分查找 2015百度之星初赛1 HDOJ 5246 超级赛亚ACMer
题目传送门 /* 二分找到不大于m的最大的数,记做p,只要a[p] + k <= a[p+1]就继续 注意:特判一下当没有比m小的数的情况:) */ #include <cstdio> ...
随机推荐
- CodeForces 567C Geometric Progression 类似dp的递推统计方案数
input n,k 1<=n,k<=200000 a1 a2 ... an 1<=ai<=1e9 output 数组中选三个数,且三个数的下标严格递增,凑成形如b,b*k,b* ...
- php fsockopen例子
<?php /* * 短信相关api */ class Webcall { protected $VCC_CODE; //api的账号 protected $password; //api的密码 ...
- Centos6.6安装Nginx
1.在安装nginx之前,需要先安装该模块需要依赖包 yum -y install zlib zlib-devel openssl openssl--devel pcre pcre-devel 2.安 ...
- hdu_5773_The All-purpose Zero(LIS)
题目链接:hdu_5773_The All-purpose Zero 题意: 给你一串数,让你求LIS,不过这里的0可以改变为任意数 题解: 官方题解讲的很清楚 1010 The All-purpos ...
- Unity 的几种打包姿势(android)
Unity 版本 4.3.2 图片1 1 默认的工程进行打包 得到的apk为8.1m(net subset) 图片2 2 代码剥离最小 – use mirco mscorlib 图片3 3 从网上 ...
- 浅谈测试rhel7新功能时的感受及遇到的问题【转载】
半夜起来看世界杯,没啥激情,但是又怕错误意大利和英格兰的比赛,就看了rhel7 相关新功能的介绍. rhel7的下载地址: https://access.redhat.com/site/downloa ...
- Hibernate写入Oracle Date类型处理
Hibernate写入Oracle数据库时,数据库设计字段为Date类型时,只能保存年月日,不能保存时分秒,如果要保存时分秒,需修改Hibernate.cfg.xml文件 <property n ...
- s7-300 第二讲
- Java中的一些术语的解释
一 API(Application Programming Interface,应用程序编程接口) 简单来说,就是其他人开发出来一块程序,你想用,他会告诉你调用哪个函数,给这个函数传什么参数,然后又 ...
- hadoop运行作业的脚本解析
#!/usr/bin/env bash # Licensed to the Apache Software Foundation (ASF) under one or more # contribut ...