[SCOI2009]windy数 题解

【BZOJ 1026】【SCOI 2009】windy数 【数位DP】 题目跳转:http://www.lydsy.com/JudgeOnline/problem.php?id=1026 Description  windy定义了一种windy数。不含前导零且相邻两个数字之差至少为2的正整数被称为windy数。 windy想知道, 在A和B之间,包括A和B,总共有多少个windy数?Input  包含两个整数,A B。Output  一个整数Sample Input【 阅读详情

题目链接

数位dp入门题,dfs(len,ps,lead,up)表示当前枚举到第len位,前一位数为ps,是否有前导0,是否达到上界。
数位dp这一篇讲得很好orz

#include<cstdio>
#include<cstring>
#include<iostream>
#define max(x,y) ((x)>(y) ? (x) : (y))
#define min(x,y) ((x)<(y) ? (x) : (y))
#define LL long long
using namespace std;

inline LL getll() {
    char ch;
    LL p=0,t;
    for(ch=getchar();ch!='-' && !(ch>='0' && ch<='9');ch=getchar());
    if(ch=='-') t=-1,ch=getchar();
    else t=1;
    for(;ch>='0' && ch<='9';ch=getchar()) {
        p=p*10+ch-48;
    }
    return t*p;
}

int dig[25];
LL d[25][2525];

LL dfs(int len,int ps,bool lead,bool up) {
    if(len==0) {
        return 1;
    }
    if(!up && !lead && d[len][ps]!=-1)//只有在无前导0且小于上界的情况下才记录
        return d[len][ps];
    int limit=up ? dig[len] : 9;
    LL ret=0;
    for(int i=0;i<=limit;i++) {
        if(!lead && i>=ps-1 && i<=ps+1) continue; //不合法
        ret+=dfs(len-1,i,lead&&i==0,up&&i==limit);
    }
    if(!up && !lead)
        d[len][ps]=ret;//只有在无前导0且小于上界的情况下才记录
    return ret;
}

LL cal(LL num) {
    int len=0;
    while(num) {
        dig[++len]=num%10;
        num/=10;
    }
    return dfs(len,0,true,true);
}

int main()
{
    LL a,b;
    memset(d,-1,sizeof d);
    a=getll();
    b=getll();
    cout<<cal(b)-cal(a-1)<<endl;
    return 0;
}
Arcgis 10.3 与 ArcGIS Engine 10.3 安装与破解 阅读详情

相关推荐

【python】epub的电子书繁体字与简体字转换

中文繁体与简体转换

xiexianyou666的博客 3088

【BZOJ1026】windy数题解

题面【题目描述】windy定义了一种windy数。不含前导零且相邻两个数字之差至少为2的正整数被称为windy数。 windy想知道,在A和B之间,包括A和B,总共有多少个windy数?【输入】包含两个整数,A B。【输出】一个整数。【输入样例一】1 10【输入样例二】25 50【输出样例一】9【输出样例二】20【数据规模和约定】100%的数据,满足 1 <= A <= B <= 200000000

堕落之神の堕落园 783

Pandas实战指南:从数据结构到清洗聚合的完整解析

在数据分析工作中,表格数据处理是最常见的需求,无论是电商运营还是量化交易,都离不开对结构化数据的清洗与转换。Python生态中,Pandas凭借Series与DataFrame两种核心数据结构,将数据标签与数值绑定,实现自动对齐,极大简化了数据操作流程。它不仅是数据清洗的利器,也是分组聚合、透视表分析和时间序列处理的基础工具。掌握Pandas,意味着能够高效完成从数据读取、缺失值处理、类型转换到分组统计的完整分析流水线,将重复性报表工作自动化。本文基于实际使用经验,系统梳理Pandas的核心概念、常用操作、

weixin_30768881的博客 258

bzoj 1026 [SCOI2009]windy数 题解(数位DP)

原题链接: 洛谷:点我QωQ bzoj:点我QωQ 题意简述 定义一个WindyWindyWindy数为:一个WindyWindyWindy数没有前导零并且所有相邻的两位差的绝对值都&gt;=2&gt;=2>=2。给定l,rl,rl,r求[l,r][l,r][l,r]之间有多少WindyWindyWindy数。 数据 输入 一行两个正整数l,rl,rl,r。 输出 l,rl,...

LightningUZ的博客 344

从入门到精通:MATEKH743 飞控全解析——MAVLink 接口软/硬件对接实战

MATEKH743飞控是基于STM32H743微控制器的无人机核心控制系统,具备强大计算能力和丰富外设接口。该飞控采用双核架构,集成高性能IMU、气压计等传感器,支持多种开源固件(Betaflight/INAV/ArduPilot),适用于FPV穿越机、固定翼及工业无人机。相比PX4等飞控,MATEKH743在性价比和DIY友好度上优势明显,同时支持MAVLink协议实现设备通信。未来发展方向包括集成更高精度传感器、优化电源管理以及拓展工业应用场景,持续推动无人机技术创新。

bother3000的博客 2284

从波形到代码:手把手调试GaN图腾柱PFC的过零点切换与软启动策略

本文详细解析了GaN图腾柱无桥Boost PFC电路在过零点切换与软启动策略中的调试方法。通过波形分析、代码实现和寄存器配置,提供了解决误开通、震荡波形等问题的实用方案,帮助工程师优化电源设计效率与可靠性。

weixin_30831529的博客 424

[题解]windy数(数位dp

简单数位dp 数位dp最重要的还是要理解模板的原理,理解数位dp的原理,理解题目的做法,套模板不一定能解决所有问题,反而大概率会有一些细节出错而无法想到 #include<bits/stdc++.h> #define ll long long using namespace std; int a,b,num[11],len; int f[11][11]; i...

weixin_38170853的博客 182

手把手教你用Python实现ITRS与GCRS坐标转换(附完整代码)

本文详细介绍了如何使用Python的Astropy库实现ITRS与GCRS坐标转换。文章从环境配置、坐标对象构建入手,深入解析了transform_to方法背后的转换矩阵与地球定向参数管理,并通过卫星地面轨迹计算实战案例,帮助开发者掌握高精度空间坐标转换的核心技术与工程实践。

weixin_28335283的博客 79

bzoj 1026 [SCOI2009]windy数 题解

1026: [SCOI2009]windy数 Time Limit: 1 Sec  Memory Limit: 162 MB Submit: 1875  Solved: 810 [Submit][Status] Description windy定义了一种windy数。不含前导零且相邻两个数字之差至少为2的正整数被称为windy数。 windy想知道,在A和B之间,包括A和B,总共有

阿蒋的专栏 1404

CGNS快速入门到实战(二):VS配置调用CGNS静态链接库

CGNS快速入门到实战这一系列分成三篇文章展开叙述,具体有:(一)CGNS静态链接库编译;(二)VS配置调用CGNS静态链接库;(三)CGNS文件及案例展示。本篇文章重点讲述VS配置调用CGNS静态链接库。

ahang_99的博客 2616

【Matlab光伏功率预测】基于GRU门控循环单元的光伏功率时间序列预测(附MATLAB代码)

【Matlab光伏功率预测】基于GRU门控循环单元的光伏功率时间序列预测(附MATLAB代码)

k8291121的博客 1099

题解 P2657 【[SCOI2009]windy数】

首先我们先看题目 windy定义了一种windy数。不含前导零且相邻两个数字之差至少为2的正整数被称为windy数。 1-观察题目,判定类型 从题目中可以画出关键词:不含前导零而且是相邻两个数字,观察数据范围: 100%的数据,满足 1 <= A <= B <= 2000000000 。我们就可以明显看出这一题是一道数位dp的模版。 2-推出状态转移方程 因为...

311

【Windows Server 2019】存储服务器的配置和管理——iSCSI的安装和配置(下)

博文介绍了如何使用Windows 10 和 ESXi 验证iSCSI服务器部署成功以及如何管理iSCSI服务 。

VMware, Windows, Linux, Cisco, Container, Kubernetes, Kali 8000

SCOI 2009 windy数 题解

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;题目传送门 【题目大意】 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 问在A~B之间有多少个 任意相邻两位的差都大于等于2 的数。 【题解】 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 一看这个数据范围,就知道是要用数位dp了。 &

a_forever_dream的博客 248

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

P2657 [SCOI2009]windy数 题解

博客园同步 原题链接 简要题意: 一个 相邻两个数字差的绝对值都 ≥2\geq 2≥2 且不含前导零 的数 被称为 “windy数”。问从 aaa 到 bbb 的 “windy数”的个数。 首先,我们考虑 111 ~ nnn 的 “windy数” 的个数怎么求。 用 fi,jf_{i,j}fi,j​ 表示有 iii 位,最高位为 jjj 的方案数。 那么,从 i−1→ii-1 \rightarro...

bifanwen的博客 338

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

[SCOI2009]windy数 题解动态规划DP

[SCOI2009]windy数 Time Limit:1000MS  Memory Limit:165536KTotal Submit:162 Accepted:74 Descriptionwindy定义了一种windy数。 不含前导零且相邻两个数字之差至少为2的正整数被称为windy数。 windy想知道,在A和B之间,包括A和B,总共有多少个windy数? Input包含两个整数,A B。 Output一个整数。 Sample Input【输入样例一】 1 10 【输入样例二】 25 50

魔神翼 3430

洛谷 P2657 [SCOI2009] windy 数 题解 数位dp

数位dp 动态规划 DFS 洛谷题解 C++代码 附详细注释

一只摸鱼的bbc 905

C++ 洛谷 P2657 [SCOI2009]windy数 题解

P2657 [SCOI2009]windy数 同步数位DP 这题还是很简单的啦(差点没做出来 个位打表大佬请离开(包括记搜),我这里讲的是DP!!! 首先Cal(b+1)-Cal(a),大家都懂吧(算了,复制一遍吧<<((因为当前的Cal(k)是计算出从1到k-1的符合条件的数的个数,所以要计算a~b的个数要用Cal(b+1)-Cal(a).))>>) ...

weixin_30527323的博客 226

【题解】P2657 [SCOI2009]windy数

\(Description:\) 给出a,b,求\([a,b]\)区间满足相邻两位之间差大于等于2的数的个数 \(Sample\) \(Input:\) 1 10 \(Sample\) \(Output\) 9 \(Sample\) \(Intput:\) 25 50 \(Sample\) \(Output:\) 20 \(Solution:\) 我天,刚刚入门数位dp就刚题?...

weixin_33943347的博客 127

【题解】BZOJ 1026 [SCOI2009]windy数

DescriptionDescriptionDescription 传送门 windywindywindy 定义了一种 windywindywindy 数。不含前导零且相邻两个数字之差至少为 222 的正整数被称为 windywindywindy 数。 windywindywindy 想知道, 在 AAA 和 BBB 之间,包括 AAA 和 BBB ,总共有多少个 windywindywind...

夕弦 341

BZOJ1026:[SCOI2009]windy数——题解

http://www.lydsy.com/JudgeOnline/problem.php?id=1026 Description   windy定义了一种windy数。不含前导零且相邻两个数字之差至少为2的正整数被称为windy数。 windy想知道, 在A和B之间,包括A和B,总共有多少个windy数? Input   包含两个整数,A B。 ...

weixin_33756418的博客 107

【题解】洛谷 P2657 [SCOI2009] windy 数(加强版)[数位dp]

简单。

Isaac Regulus的博客 309

洛谷P2657 [SCOI2009]windy数 题解(数位dp)

description: windy定义了一种windy数。不含前导零且相邻两个数字之差至少为2的正整数被称为windy数。 windy想知道, 在A和B之间,包括A和B,总共有多少个windy数? 1≤A≤B≤20000000001\leq A\leq B\leq20000000001≤A≤B≤2000000000 solution: 数位dp。 设f[i][j]f[i][j]f[i][j]表示...

ShineEternal的笔记小屋 493

BZOJ P1026 LOJ #10165 「SCOI2009」windy数【数位DP】【详细题解】

f[i][j]f[i][j]f[i][j]表示长度为iii并且最高位为jjj的windy数的个数。 递推关系:f[i][j]=∑f[i−1][k]&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;abs(j−k)≥2f[i][j]=\sum f[i-1][k]\ \ \ \ \ \ \ abs(j-k)\ge

Yucohny 464
上一篇: hdu Cube
下一篇: 单词检索题解
Ansicht
博客等级 码龄9年 6粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值