问题标题: 酷町堂:天哪!!谁再来救救我!!

0
0
已解决
龙舟
龙舟
高级光能
高级光能

1451   数字统计经验值:0

题目描述 Description

请统计某个给定范围[L, R]的所有整数中,数字 2 出现的次数。

比如给定范围[2, 22],数字 2 在数 2 中出现了 1 次,在数 12 中出现 1 次,在数 20 中出

现 1 次,在数 21 中出现 1 次,在数 22 中出现 2 次,所以数字 2 在该范围内一共出现了 6

次。

输入描述 Input Description

输入格式:
输入文件名为 two.in。

输入共 1 行,为两个正整数 L 和 R,之间用一个空格隔开。

输出描述 Output Description

输出格式:
输出文件名为 two.out。

输出共 1 行,表示数字 2 出现的次数。

样例输入 Sample Input

【输入样例1】 2 22 【输入样例2】 2 100

样例输出 Sample Output

【输出样例1】 6 【输出样例2】 20

数据范围及提示 Data Size & Hint

1 ≤ L ≤R≤ 100000。

求思路,核心!!


1
已采纳
刘英杰
刘英杰
新手天翼
新手天翼

怎么讲呢

总体还是挺简单的,主要就是容易超时

C++有个叫做stringstream的东西,不知道您知不知道

首先,加载头文件

#include<sstream>

接下来,定义一种特殊的变量

stringstream a[100001];

如果想要将某个字符串转换为stringstream类型

(假定字符串为s)

a[1]<<s;

如果想要将stringstream类型转换为整型

(假定整型为n)

a[1]>>n;

如果还是不理解可以参照这个网址:https://www.cnblogs.com/iceix/p/12713895.html

PS:一个stringstream在一个主函数里只能转换一次,所以一般都是定义一个数组来对成规模的数据进行转换

好了,相信有了这些提示,你应该能做出来

1
被禁言 何冯成
何冯成
中级光能
中级光能

额,楼上的也太麻烦了

这是一道很简单的水题,我记得好像是NOIP的题

思路:

1.循环a~b

2.定义一个x来存i

3.开始找有几个2while(x!=0){

........  sum++;

x/=10;

}

 

THE END

 

0
包涵宇
包涵宇
中级天翼
中级天翼

一楼666啊!

赞成二楼!

不会超时!

我要回答