递进数字C++

给定两个整数 l,r(l≤r),请问 [l,r] 范围内,满足数字的任意相邻两位差值都恰好为 1,且数字至少有两位的数有多少个。

输入格式

第一行包含整数 T,表示共有 T 组测试数据。每组数据占一行,包含两个整数 l 和 r。

输出格式

每组数据输出一行,一个结果。

数据范围

1≤T≤100,

0≤l≤r≤3×108

输入样例:

2

1 10

1 100

输出样例:

1

17

cpp 复制代码
#include<iostream>
using namespace std;
int l,r,cnt;
void dfs(int x)
{
    if(x>r) return;
    if(x>=l&&x>=10) cnt++;
    int d=x%10;
    if(d) dfs(x*10+d-1);
    if(d<9) dfs(x*10+d+1);
}
int main()
{
    int T;
    cin>>T;
    while(T--)
    {
        cin>>l>>r;
        cnt=0;
        for(int i=1;i<=9;i++)
            dfs(i);
        cout<<cnt<<endl;
    }
    return 0;
}
相关推荐
2401_90015154几秒前
C++编译期正则表达式
开发语言·c++·算法
倾心琴心几秒前
【agent辅助pcb routing coding学习】实践1 kicad pcb 格式讲解
算法·agent·pcb·eda·routing
仙俊红2 分钟前
LeetCode493周赛T3,前后缀分解
数据结构·算法·leetcode
_日拱一卒4 分钟前
LeetCode(力扣):二叉树的前序遍历
java·数据结构·算法·leetcode
倾心琴心4 分钟前
【agent辅助pcb routing coding学习】实践5 kicad类按类别理解
算法·agent·pcb·eda·routing
Frostnova丶8 分钟前
LeetCode 50. Pow(x, n)
算法·leetcode
lierenvip12 分钟前
【语义分割】12个主流算法架构介绍、数据集推荐、总结、挑战和未来发展
算法·架构
三块可乐两块冰17 分钟前
机器学习笔记一
笔记·算法·机器学习
hyl2001219 分钟前
使用C++库GNU Scientific Library求解非线性方程(组)
开发语言·c++
凤年徐21 分钟前
优选算法——滑动窗口2
数据结构·c++·算法