XC1263 签到题(哇 ,写得我怀疑人生啊!!!@!@)
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 11
样例输出
真的开始心态都崩了
然后,去问了下林喵喵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 签到题(哇 ,写得我怀疑人生啊!!!@!@)的更多相关文章
- 44个 Javascript 变态题解析——分分钟让你怀疑人生
原题来自: http://javascript-puzzlers.herokuapp.com/ 第1题 ["1", "2", "3"].ma ...
- WEB新手之签到题
写一写web新手赛的题. 这是签到题,开始时需要耐心等待页面中字母全部出现. 字母全部出现后,会跳转到另一个界面,如上图所示.F12没什么特别的地方,这题应该有点难度. 按往常一样,先抓包. 按英文提 ...
- 2016-2017学年第三次测试赛 问题 F: 签到题
问题 F: 签到题 时间限制: 1 Sec 内存限制: 128 MB提交: 80 解决: 28 提交统计讨论版 题目描述 在计算机网络考试中, 黑帅男神看到一个将IP网络分类的题, 精通C++的他 ...
- 浅谈CVE-2018-12613文件包含/buuojHCTF2018签到题Writeup
文件包含 蒻姬我最开始接触这个 是一道buuoj的web签到题 进入靶机,查看源代码 <!DOCTYPE html> <html lang="en"> &l ...
- A 小石的签到题
题目链接:https://ac.nowcoder.com/acm/contest/949/A 思路: 这题明确的说了是个签到题,但是一直怀疑不是签到题,是唬我的,结果仔细想了想真是这么回事. 每个人必 ...
- Solution -「多校联训」签到题
\(\mathcal{Description}\) Link. 给定二分图 \(G=(X\cup Y,E)\),求对于边的一个染色 \(f:E\rightarrow\{1,2,\dots,c\ ...
- A 洛谷 P3601 签到题 [欧拉函数 质因子分解]
题目背景 这是一道签到题! 建议做题之前仔细阅读数据范围! 题目描述 我们定义一个函数:qiandao(x)为小于等于x的数中与x不互质的数的个数. 这题作为签到题,给出l和r,要求求. 输入输出格式 ...
- fjwc2019 D3T1 签到题 (贪心)
#184. 「2019冬令营提高组」签到题 每次询问接近O(1).......考虑贪心 怎么贪心呢? 对于相邻的两个数,我们要保证异或x后单调不降 我们找到两个数二进制上最高的相异位 当左边的数相异位 ...
- CTF-练习平台-WEB之 签到题
一.签到题 根据提示直接加群在群公告里就能找到~
随机推荐
- D. Lunar New Year and a Wander bfs+优先队列
D. Lunar New Year and a Wander bfs+优先队列 题意 给出一个图,从1点开始走,每个点至少要经过一次(可以很多次),每次经过一个没有走过的点就把他加到走过点序列中,问最 ...
- LED Decorative Light Manufacturer - Decorative Lighting: Functionality And Aesthetics
Whether it is for general ambient lighting, task lighting or accent lighting, the decorative lightin ...
- winform学习(6)控件的对齐、比例、定位操作
窗体控件的常用操作 选中一个控件,按住Ctrl再点选另一个控件(此时编辑的是第二个控件,当使用框选选中多个控件时,编辑的是黑色锚点的控件) 代码中的居顶和居底: 控件标识符.BringToFront( ...
- Java正则表达式提取String字符串中的IP地址
/** * 正则提前字符串中的IP地址 * @param ipString * @return */ public static List<String> getIps(String ip ...
- 【转载】JDBC操作LOB字段
转自:http://www.cnblogs.com/tengtao93/p/4984689.html 1.LOB(Large Objects)大对象,是用来存储大量的二进制和文本数据的一种数据类型(一 ...
- 机器学习(ML)十六之目标检测基础
目标检测和边界框 在图像分类任务里,我们假设图像里只有一个主体目标,并关注如何识别该目标的类别.然而,很多时候图像里有多个我们感兴趣的目标,我们不仅想知道它们的类别,还想得到它们在图像中的具体位置.在 ...
- IntelliJ IDEA 2017.3尚硅谷-----卸载
直接在用户目录下搜索,卸载的干净就要删除 删除这两个目录,重启idea可以还原配置. editplus删除后重启也是这个效果
- Flutter 中的表单
一.Flutter 常用表单介绍 Flutter 中常见的表单有 TextField 单行文本框,TextField 多行文本框.CheckBox.Radio.Switch CheckboxLi ...
- via/route blockage/size blockage/wire/pin guide/pin blockage/partition
1.via 中文名称互连线通孔.我们知道,芯片的连线有不同层的金属互连线相互连接.而Via的作用就是连接这些不同层的金属.如下图所示: 一个完整的通孔是由三层组成的,包括两个互连层和一个cut层,cu ...
- VS2017编译错误:#error: Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version
VS2017编译错误:#error: Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll ve ...