1263: 签到题

时间限制: 1 Sec  内存限制: 128 MB
提交: 174  解决: 17

题目描述

大家刚过完寒假,肯定还没有进入状态,特意出了一道签到题给各位dalao压压惊。

如果一个数字其中每一位都互不相同,则这个数满足要求。(如:21、10满足要求,11 不满足要求)。

给出一个范围[a,b],并求出在范围内符合要求数字的数量。

输入

第一行T表示组数,T<=1000.

每一组输入一行,包含两个数字a,b。1<=a,b<=100000.

输出

对于每一组,求出[a,b]范围内符合条件数字的数量。

样例输入

1
1 11

样例输出

10
 
   题目意思很简单,就是拆分月一个数的各个位,然后,我就想当然的用了很蠢的方法,暴力拆解,然后就出现了:

真的开始心态都崩了

然后,去问了下林喵喵dalao 他跟我说用打表的方法,就是先全部遍历一遍100000个数,把每个数字之前对应的有几个符合标准的数字给记录下来,然后最后输出array[a]-array[b]即可。

然后,对于判断一个数的各个位数是否一样,也有一个很好的子函数,是宇飞想出来的。

奉上函数:

int checkNum(int n) {
char arr[] = "";//先搞一个字符串
while (n != )
{
if (arr[n % ] <= '') //假如一个数在个位中 出现了 且是数字范围
{
arr[n % ] = 'x';//我们把它设置为 x 这样它所对应的数就不在数的范围内了
//下再有这个数 就直接到else 里面了
} else {
return ;
}
n /= ;//然后一步步 往百位千位走
}
//如果到最后都没有 return 0 那就是符合标准
return ;
}

然后是打表的部分:

 for(int i=;i<=;i++)
{
if(checkNum(i))
{
cnt++;
}
array[i]=cnt;
}

再最后在主函数中,要考虑一个地方,就是在减的过程中,考虑下小数是否符合条件,符合我们还要+1,不符合,直接减。

最后,完整ac代码:

#include <iostream>
#define length 100001
using namespace std;
int checkNum(int); int array[length] = {}; int main() {
int cnt=;
for(int i=;i<=;i++)
{
if(checkNum(i))
{
cnt++;
}
array[i]=cnt;
}
// cout<<array[10]<<endl;
int cishu;
cin>>cishu;
int m,n;
int number;
while(cishu--)
{
cin>>m>>n;
if(checkNum(m))//要考虑小的那个数符不符合标准
{
cout<<array[n]-array[m]+<<endl;//符合标准 我们还得加上小的数
}
else{
cout<<array[n]-array[m]<<endl;//不符合标准我们直接退出
} } return ;
} int checkNum(int n) {
char arr[] = "";//先搞一个字符串
while (n != )
{
if (arr[n % ] <= '') //假如一个数在个位中 出现了 且是数字范围
{
arr[n % ] = 'x';//我们把它设置为 x 这样它所对应的数就不在数的范围内了
//下次就直接到else 里面了
} else {
return ;
}
n /= ;//然后一步步 往百位千位走
}
//如果到最后都没有 return 0 那就是符合标准
return ;
}

XC1263 签到题(哇 ,写得我怀疑人生啊!!!@!@)的更多相关文章

  1. 44个 Javascript 变态题解析——分分钟让你怀疑人生

    原题来自: http://javascript-puzzlers.herokuapp.com/ 第1题 ["1", "2", "3"].ma ...

  2. WEB新手之签到题

    写一写web新手赛的题. 这是签到题,开始时需要耐心等待页面中字母全部出现. 字母全部出现后,会跳转到另一个界面,如上图所示.F12没什么特别的地方,这题应该有点难度. 按往常一样,先抓包. 按英文提 ...

  3. 2016-2017学年第三次测试赛 问题 F: 签到题

    问题 F: 签到题 时间限制: 1 Sec  内存限制: 128 MB提交: 80  解决: 28 提交统计讨论版 题目描述 在计算机网络考试中, 黑帅男神看到一个将IP网络分类的题, 精通C++的他 ...

  4. 浅谈CVE-2018-12613文件包含/buuojHCTF2018签到题Writeup

    文件包含 蒻姬我最开始接触这个 是一道buuoj的web签到题 进入靶机,查看源代码 <!DOCTYPE html> <html lang="en"> &l ...

  5. A 小石的签到题

    题目链接:https://ac.nowcoder.com/acm/contest/949/A 思路: 这题明确的说了是个签到题,但是一直怀疑不是签到题,是唬我的,结果仔细想了想真是这么回事. 每个人必 ...

  6. Solution -「多校联训」签到题

    \(\mathcal{Description}\)   Link.   给定二分图 \(G=(X\cup Y,E)\),求对于边的一个染色 \(f:E\rightarrow\{1,2,\dots,c\ ...

  7. A 洛谷 P3601 签到题 [欧拉函数 质因子分解]

    题目背景 这是一道签到题! 建议做题之前仔细阅读数据范围! 题目描述 我们定义一个函数:qiandao(x)为小于等于x的数中与x不互质的数的个数. 这题作为签到题,给出l和r,要求求. 输入输出格式 ...

  8. fjwc2019 D3T1 签到题 (贪心)

    #184. 「2019冬令营提高组」签到题 每次询问接近O(1).......考虑贪心 怎么贪心呢? 对于相邻的两个数,我们要保证异或x后单调不降 我们找到两个数二进制上最高的相异位 当左边的数相异位 ...

  9. CTF-练习平台-WEB之 签到题

    一.签到题 根据提示直接加群在群公告里就能找到~

随机推荐

  1. 【c++】零基础的自修课 01-开发工具的安装(code::blocks)

    1/开发工具的下载地址: ·(选用 visual studio开发工具,有区分mac和windows版本)https://visualstudio.microsoft.com/zh-hans/down ...

  2. 任务队列方案详解(一)JVM线程池

    前言 我们都知道 web 服务的工作大多是接受 http 请求,并返回处理后的结果.服务器接受的每一个请求又可以看是一个任务.一般而言这些请求任务会根据请求的先后有序处理,如果请求任务的处理比较耗时, ...

  3. 协同ADMM求解考虑碳排放约束直流潮流问题的对偶问题(A Distributed Dual Consensus ADMM Based on Partition for DC-DOPF with Carbon Emission Trading)

    协同ADMM求解考虑碳排放约束直流潮流问题的对偶问题 (A Distributed Dual Consensus ADMM Based on Partition for DC-DOPF with Ca ...

  4. C#连接SQL Server数据库(二)

    执行SQL语句:Command对象 1.Command对象概述   Command对象是一个数据命令对象,主要功能是向数据库发送查询.更新.删除.修改操作的SQL语句.Command对象主要有以下几种 ...

  5. [坑] js indexOf is not a function

    今天写js的时候,本来没有问题的代码突然出现了问题,就是本来下拉框里面在更新之后会出现内容的 但是并没有出现内容,按下F12 查看了Console之后发现确实是接收到了数据,但是却也报错了 内容是 我 ...

  6. Nexus坑人系列-license格式问题

    这种情况一般出现在RMA或者新设备使用的时候.这些时候一般需要安装license,在安装完license的时候,例如我们去配置一些三层特性,例如feature eigrp等,可能会出现设备拒绝了你的命 ...

  7. Validation failed for one or more entities. See ‘EntityValidationErrors

    try{ context.SaveChanges(); } catch (DbEntityValidationException ex) { var errorMessages = ex.Entity ...

  8. angular2 单元测试 路由相关

    第一步:在html模板中,写路由链接,并保证有路由出口 第二步:写自定义的路由指令和路由出口组件,因为在单元测试中不需要引入真实的路由,此处我们用虚拟的代替即可. 第三步:将自定义的虚拟路由指令和路由 ...

  9. laravel 模型观察器

    模型观察器 对模型的生命周期内的多个时间点进行监控,分别有 ~ing 和 ~ed 事件 每个监控方法接收 model 作为唯一参数 使用观察器 创建观察器文件,一个普通类,不需要继承什么 针对需要的事 ...

  10. opencv:图像直方图相似性比较

    void hist_compare(Mat src1, Mat src2) { int histSize[] = { 256, 256, 256 }; int channels[] = { 0, 1, ...