首页 > 试题广场 >

幸运数字

[编程题]幸运数字
  • 热度指数:2990 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解

小雅同学认为6,8是她的幸运数字,而其他数字均不是,一个幸运数是指在十进制表示下只含有幸运数字的数。给定你一个区间(a,b)a和b之间(其中包括a和b幸)运数的个数。


输入描述:
输入两个整数a和b,a的取值范围在1和1000000000之间(其中包括1和1000000000),b的取值范围在a和1000000000之间(其中包括a和1000000000)。


输出描述:
返回a和b之间的幸运数个数,如果入参不合法,请输出-1
示例1

输入

1 10

输出

2

说明

6,8,6666,88888,6668888,68686688均为幸运数字,当a=1,b=10函数返回值为2。
头像 bandiaoz
发表于 2024-12-25 23:50:17
解题思路 这是一道数字组合的递归题目,主要思路如下: 首先判断输入的合法性: 和 必须在 到 之间 必须大于等于 计算思路: 获取 和 的位数 和 对于每个长度从 到 的数字进行组合 使用递归生成所有可能的6和8的组合 判断生成的数字是否在 范围内 优化 展开全文
头像 牛客229068068号
发表于 2025-08-19 22:23:16
from collections import deque def count68(min_num,max_num): if max_num<6: return 0 count =0 array = deque(['6','8']) whil 展开全文
头像 bao_hu_yuan_zhang
发表于 2024-03-29 15:48:16
#include <iostream> using namespace std; int main() { long long i=0; long long a=0; long long b=0; cin>>a>>b; 展开全文
头像 牛客51361736号
发表于 2020-06-26 14:29:18
include using namespace std;int ans = 0; void backtrack(int num, int begin, int end){ if(num > end) { return; } if(num >= beg 展开全文
头像 丨阿伟丨
发表于 2025-09-18 16:47:38
题目链接 幸运数字 题目描述 一个“幸运数”是指在十进制表示下,只含有数字 6 和 8 的正整数。 给定一个区间 ,求这个区间内(包含 和 )幸运数的个数。 约束:。 解题思路 本题要求在高达 的区间内计数特定模式的数字。如果直接遍历区间内的每一个数再判断其是否为幸运数,时间复杂度会非常高,无法 展开全文

问题信息

上传者:小小
难度:
25条回答 8130浏览

热门推荐

通过挑战的用户

查看代码
幸运数字