Classy Numbers
http://codeforces.com/group/w1oiqifZbS/contest/1036/problem/C
①先查找,存入vector(dfs)-->排序(sort)-->二分(lower_bound,upper_bound)
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<iostream>
#include<stdlib.h>
#include<algorithm>
#include<queue>
#include<vector>
#include<string>
#include<set>
#include<cctype>
#include<sstream>
#define mem(a) memset(a,0,sizeof(a))
#define LL long long
using namespace std;
const int N=1e6+;
vector<LL> ve;
LL n,l,r,m;
void dfs(LL now,int sum,int len)
{
ve.push_back(now);
if(len==)return;
dfs(now*,sum,len+); //十的倍数
if(sum<)
{
for(int i=;i<=;i++)
dfs(now*+i,sum+,len+);//其他,加一---非零
}
}
int main()
{
for(int i=;i<=;i++) //找到符合条件的数
dfs(i,,);
ve.push_back(1e18);//范围,不超过,且1e18符合
sort(ve.begin(),ve.end()); //lo,up要先排序
int t;
scanf("%d",&t);
while(t--)
{
scanf("%I64d%I64d",&l,&r);
/*二分查找*/
int L=lower_bound(ve.begin(),ve.end(),l)-ve.begin();//返回第一个大于等于元素的下标
int R=upper_bound(ve.begin(),ve.end(),r)-ve.begin();//返回第一个大于的元素的下标;
printf("%d\n",R-L); //因为是up-lo,所以不用+1,且两个都是lo的话+1会在lr相等时出错
}
return ;
}
②查到发现还可以用数位DP mark一下
Classy Numbers的更多相关文章
- Educational Codeforces Round 50 (Rated for Div. 2) C. Classy Numbers
C. Classy Numbers 题目链接:https://codeforces.com/contest/1036/problem/C 题意: 给出n个询问,每个询问给出Li,Ri,问在这个闭区间中 ...
- CF1036C Classy Numbers dfs+二分
Classy Numbers time limit per test 3 seconds memory limit per test 256 megabytes input standard inpu ...
- Codeforces 1036C Classy Numbers 【DFS】
<题目链接> 题目大意: 对于那些各个位数上的非0数小于等于3的数,我们称为 classy number ,现在给你一个闭区间 [L,R] (1≤L≤R≤1018).,问你这个区间内有多 ...
- C. Classy Numbers
链接 [http://codeforces.com/contest/1036/problem/C] 题意 给你l,r,让你找在这个闭区间内位数不为0不超过3的个数,1<=l,r<=1e18 ...
- [CF1036C]Classy Numbers
题目大意:多个询问,每个询问问$[l,r](1\leqslant l\leqslant r\leqslant10^{18})$内有多少个数满足非零数位小于等于$3$. 题解:数位$DP$,$f_{i, ...
- 【Codeforces 1036C】Classy Numbers
[链接] 我是链接,点我呀:) [题意] 让你求出只由3个非0数字组成的数字在[li,ri]这个区间里面有多少个. [题解] 只由3个非0数字组成的数字在1~10^18中只有60W个 dfs处理出来之 ...
- CF集萃1
因为cf上一堆水题,每个单独开一篇博客感觉不太好,就直接放一起好了. CF1096D Easy Problem 给定字符串,每个位置删除要代价.求最小代价使之不含子序列"hard" ...
- Educational Codeforces Round 50
1036A - Function Height 20180907 \(ans=\left \lceil \frac{k}{n} \right \rceil\) #include<bits/ ...
- nowcoder(牛客网)提高组模拟赛第一场 解题报告
T1 中位数(二分) 这个题是一个二分(听说是上周atcoder beginner contest的D题???) 我们可以开一个数组b存a,sort然后二分b进行check(从后往前直接遍历check ...
随机推荐
- 【LOJ6074】【2017 山东一轮集训 Day6】子序列 DP
题目描述 有一个由前 \(m\) 个小写字母组成的串 \(S\),有 \(q\) 个询问,每次给你 \(l,r\),问你 \(S_{l\ldots r}\) 有多少个非空子序列. \(m=9,n=\l ...
- 【Spring】Spring Data JPA
原始JDBC操作数据库 传统JDBC方式实现数据库操作 package com.imooc.util; import java.io.InputStream; import java.sql.*; i ...
- Oracle Database 快捷版 安装 连接
Oracle Database 快捷版 11g 第 2 版 下载地址:http://www.oracle.com/technetwork/cn/database/database-technologi ...
- java替换ascii表字符
如下: //处理特殊字符 public String dealSpecialXml(String xml){ String result = ""; //result = xml. ...
- python格式化输出的几种方式
第一种 字符串拼接 就不写了 下面的是 第二 第三 第四种 name = input("name:") age = int(input("age:")) p ...
- Vue基础之es6
什么是ECMAScript,以及es6的诞生? 1997年 ECMAScript 1.0 诞生 1999年12月 ECMAScript 3.0诞生,它 是一个巨大的成功,在业界得到了广泛的支持,它奠定 ...
- SpringCloud笔记五:Feign
目录 什么是Feign? 有了Ribbon我还要Feign干嘛? 新建consumer-feign 修改api项目 引入Maven文件 新建feign的接口 启动项目 报错 发泄发泄心情,一个段落 什 ...
- java多图片上传--前端实现预览--图片压缩 、图片缩放,区域裁剪,水印,旋转,保持比例。
java多图片上传--前端实现预览 前端代码: https://pan.baidu.com/s/1cqKbmjBSXOhFX4HR1XGkyQ 解压后: java后台: <!--文件上传--&g ...
- Aurora的安装和中文配置
转载自: http://blog.csdn.net/wdkirchhoff/article/details/72903885 要用 Aurora 很烦躁. 时不时出问题... 看看以下转载的吧. Au ...
- [物理学与PDEs]第2章习题11 Lagrange 形式的一维理想流体力学方程组在强间断线上的间断连接条件
对由第 10 题给出的 Lagrange 形式的一维理想流体力学方程组, 给出解在强间断线上应满足的间断连接条件 (假设体积力 $F\equiv 0$). 解答: $$\beex \bea \sez{ ...