优雅数
优雅数
优雅枚举
给定两个数 L,R 求 L,R 之间(含)有多少个“优雅数”。
优雅数的定义:把一个数看做一个长度为 n 的字符串,n 个字符中 n−1 个全相同,有且仅有一个字符不同。例如 33323,119 都是优雅的,99999, 2332 都是不优雅的。
输入:
输入一行两个整数 L, R。(100 ≤ L ≤ R ≤ 1016)
输出:
输出两数间优雅数的个数。
样例:
1 | 110 133 |
1 | 13 |
样例说明:
1 | 110,112,113,114,115,116,117,118,119,121,122,131,133 |
参考代码
思路1:暴力法,遍历两数区间,直接对优雅数进行判定。
思路2:构造优雅数,将区间之内的所有优雅数直接构造出来,判定是否构造的优雅数是否在给定区间范围内。
单独的数字是几
多个的数字是几
优雅数的长度
单独的数字在优雅数中的位置(构造优雅数)
- 若一堆数为0的话,单独的数字必须要在优雅数的首位(不允许前导零)
- 若一个数为0的话,单独的0数字必须不能在首位(不允许前导零)
1 |
|
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.