数字(number)
数字(number)
Time Limit:2000ms Memory Limit:128MB
题目描述
LYK定义了一个新的计算。
具体地,一开始它有两个数字a和b。
每一步,它可以将b增加1,或者将a乘上b。
也就是说(a,b)经过一次操作后可以变成(a,b+1)或者(a*b,b)。再经过一次操作可以变成(a,b+2)或者(a*(b+1),b+1)或者(a*b,b+1)或者(a*b*b,b)。接下来都类似……它认为只有在这个括号左侧的数字才是有意义的,并且它想执行的操作数不会很多。
具体的,如果LYK能通过不超过p步,使得这个括号内左侧的数字变成x,那么x就是一个有意义的数字!
但zhw觉得这个题目太难了,会为难大家,于是他将这个问题中初始的a定义为了1,把b定义为了0。
LYK想知道在一段区间[L,R]中,存在多少有意义的数字。
输入格式(number.in)
第一行3个数分别表示L,R,p。
输出格式(number.out)
一个数表示答案。
输入样例1
1 100 10
输出样例1
46
输入样例2
233 233333333 50
输出样例2
332969
数据范围
对于30%的数据L,R<=10。
对于另外20%的数据p<=20。
对于70%的数据1<=L<=R<=1000,1<=p<=50。
对于90%的数据1<=L<=R<=1000000,1<=p<=50。
对于100%的数据1<=L<=R<=500000000,1<=p<=50。
搜索白,但只有90分
- #include<iostream>
- #include<cstdio>
- #include<algorithm>
- #include<cstring>
- #include<queue>
- #include<math.h>
- #include<vector>
- using namespace std;
- #define LL long long
- int l,r,p,ans;
- bool f[];
- void dfs(int a,int b,int x)
- {
- if(a>=l&&a<=r) f[a]=true;
- if(1LL*a*b>r) return;
- if(x>=p) return;
- dfs(a*b,b,x+);dfs(a,b+,x+);
- }
- int main()
- {
- freopen("number.in","r",stdin); freopen("number.out","w",stdout);
- scanf("%d%d%d",&l,&r,&p);
- dfs(,,);
- for(int i=l;i<=r;i++)
- if(f[i]) ans++;
- cout<<ans;
- return ;
- }
数字(number)的更多相关文章
- 幸运数字(number)
幸运数字(number) Time Limit:1000ms Memory Limit:64MB [题目描述] LYK最近运气很差,例如在NOIP初赛中仅仅考了90分,刚刚卡进复赛,于是它决定使用 ...
- 数字(Number)类型(一)
多行语句 Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠(\)来实现多行语句,例如: total = item_one + \ item_two + \ item_three ...
- Python 数字(Number)
Python 数字(Number) Python 数字数据类型用于存储数值. 数据类型是不允许改变的,这就意味着如果改变数字数据类型的值,将重新分配内存空间. 以下实例在变量赋值时 Number 对象 ...
- 模拟T1数字number
那么第一题首先非常水的一道题…… 看一下题 数字(number) Time Limit:1000ms Memory Limit:128MB 题目描述 LYK拥有n个数,这n个数分别是a1,a2,… ...
- Javascript学习笔记:2种其他类型转换为数字Number类型的方式
①使用parseInt()/parseFloat()(在ECMAScript6中是Number.parseInt()/Number.parseFloat()) console.log(parseInt ...
- XStream、JAXB 日期(Date)、数字(Number)格式化输出xml
XStream.Jaxb是java中用于对象xml序列化/反序列化 的经典开源项目,利用它们将对象转换成xml时,经常会遇到日期(Date).数字按指定格式输出的需求,下面是使用示例: 一.日期字段格 ...
- 47. 数组中出现次数超过一半的数字[Number appears more than half times]
[题目]:数组中有一个数字出现的次数超过了数组长度的一半,找出这个数字. 例如长度为9的数组{1,2,3,2,2,2,5,4,2}中次数超过了数组长度的一半的数字为2,而长度为8的数组{1,2,3,2 ...
- JavaSrcipt的数字(number):深入理解内部机制
一.数字的语法 JavaScript中的数字字面量一般用十进制表示.在JavaScript中表示数字的数据类型只有一种Number,这种天使与魔鬼同体的数据类型也就只有js了. //同时表达整数和浮点 ...
- 3-Python3从入门到实战—基础之数据类型(数字-Number)
Python从入门到实战系列--目录 Python3 中有六个标准的数据类型: Number(数字) String(字符串) List(列表) Tuple(元组) Sets(集合) Dictionar ...
随机推荐
- JasperReport 中文问题解决
1 运行环境 1.1 JasperReport 3.5 JasperReports 是iReport的核心内容.它是一个强有力的开源报表产生工具,可以将内容输出到屏幕上.打印机或生成PDF ...
- CH 5402 选课(分组背包+树形DP)
CH 5402 选课 \(solution:\) 很有讨论套路的一道题,利用树的结构来表示出不同课程之间的包含关系(这里还要建一个虚点将森林变成一颗打大树).然后用子树这个概念巧妙的消除了因为这些包含 ...
- MRP 流程
正常流程是这样的:需要>MRP>PLANNED ORDER>PR>PO PLANNED ORDER>PR>PO之间的转换可手工或自动设置转换的时间点是根据计划边际, ...
- Mac开发必备工具(三)—— Fish shell
Fish shell 简介 fish 可以根据输入自动匹配历史命令.它的一大特点是开箱即用,没有zsh那些繁琐的配置.官网:http://www.fishshell.com/. 安装与配置 在终端里使 ...
- codevs矩阵乘法系列
T1:矩阵乘法板子题,练手. #include <map> #include <set> #include <cmath> #include <ctime&g ...
- BZOJ_4311_向量_线段树按时间分治
BZOJ_4311_向量_CDQ分治+线段树按时间分治 Description 你要维护一个向量集合,支持以下操作: 1.插入一个向量(x,y) 2.删除插入的第i个向量 3.查询当前集合与(x,y) ...
- windows下编译调试nginx
typora-copy-images-to: image windows下编译调试nginx linux使用gdb跟踪代码效率不高,在通过跟踪代码进行源码分析,与定位复杂逻辑问题时,如果有一个简单易用 ...
- 固定dll的加载基址的方法
调试dll的时候会有一件事情比较烦人,就是dll加载的地址不会很固定(默认设置下编译的dll基址总是0x10000000,多个同基址的dll加载时,后面的肯定会被重定位),这给前后多次调试时对比分析结 ...
- JS实现系统时间(自动)
转自:https://blog.csdn.net/qq_35607510/article/details/54600563
- GetSafeHwnd()
CreateCompatibleBitmap The CreateCompatibleBitmap function creates a bitmap compatible with the devi ...