- 2024-09-22数位dp windy数
学习笔记因为这题总是涉及相邻位,所以在计算的时候要多计算几个。#include<bits/stdc++.h>usingnamespacestd;#definelllonglongintn,m;lldp[15][15];inta[15];voidinit(){ for(inti=0;i<=10;i++){ dp[1][i]=1; } for(inti=2;i<=10;i++){ for(intj=0
- 2024-09-15P2657 [SCOI2009] windy 数 题解
枚举、预处理,len-1位,len位但小于第一个数的这些都不讲了,看这篇题解windy讲一下贴近最高位的处理。因为最高位如果取了,后面位数只能取到最高位,而不是9,而后面的数也是同理,所以我们的内部$\j\$循环枚举范围要把\(num_i\)单独拿出来判,单独拿出来的原因是好判break一些,因为已
- 2024-05-19数位dp
一、算法简析数位dp题目的特点求某个区间\([L,R]\)内,满足某种性质的数的个数。数位dp的解题技巧技巧一类似前缀和,转换为\([0,R]-[0,L-1]\)求解。分别统计两个区间内满足条件的数的个数,再作差。技巧二由于边界\(R\)的限制,首先就要保证讨论的数小于等于\(R\),再考虑是
- 2024-04-06P2657 [SCOI2009] windy 数
原题链接题解一个细节坑我好久code#include<bits/stdc++.h>#definelllonglongusingnamespacestd;llf[15][15]={0};//从最高位第i位数字为j时的数字里有多少windy数llsolve(llnow){now++;//小于等于变小于lllen=0;llnum[15]={0};while(now
- 2024-02-06数位DP的一般方法
数位DP?数位DFS!P2657[SCOI2009]windy数-洛谷|计算机科学教育新生态(luogu.com.cn)不含前导零且相邻两个数字之差至少为2的正整数被称为windy数。windy想知道,在a和b之间,包括a和b,总共有多少个windy数?我们使用DFS解决。数位DFS要设计好状态,考虑好哪些条件会
- 2024-01-20数位 DP
引入一般数位DP的题目是这样的:有一个返回值为bool类型的函数\(f(x)\)。这个函数一般是跟\(x\)的数位有关的。给定\(l,r\),求\(l\simr\)中有多少\(x\)的\(f(x)\)为真。\(l,r\le10^{18}\)。典型的例子是windy数:不含前导零且相邻两个数字之差至少为\(
- 2023-01-24P2657 [SCOI2009] windy 数 数位DP好题
P2657[SCOI2009]windy数-洛谷|计算机科学教育新生态(luogu.com.cn)数位DP好题主要问题是:不含前导零且相邻两个数字之差至少为 2solution:现在枚举到了第i位
- 2022-12-071083. Windy数
题目链接1083.Windy数Windy定义了一种Windy数:不含前导零且相邻两个数字之差至少为\(2\)的正整数被称为Windy数。Windy想知道,在\(A\)和\(B\)之间,包括\(A\)
- 2022-09-18Windy数
数位DP原题链接题目描述:计算从[l,r]中windy数的个数windy数:不含前导零且任意相邻两位数字之差至少为2由于不含前导零,所以最高位不能从0开始,只能从1~x-1考虑状态表