博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[SCOI2009]windy数
阅读量:4583 次
发布时间:2019-06-09

本文共 763 字,大约阅读时间需要 2 分钟。

题目

做法

一眼题系列打半天结果循环写反了

套路:

\(1、\)预处理\(dp[i][j]\)\(i\)位为\(j\)的方案数
\(2、Solve(r)-Solve(l-1)\)
\(~~~~\)(高位不动处理低位,最高位\(1\)~\(x-1\),前导\(0\)情况)

My complete code

#include
using namespace std;typedef long long LL;LL l,r;LL dp[15][10],a[15];inline void Calc(){ for(LL i=0;i<=9;++i) dp[1][i]=1; for(LL i=2;i<=10;++i) for(LL j=0;j<=9;++j) for(LL k=0;k<=9;++k) if(abs(j-k)>=2) dp[i][j]+=dp[i-1][k];}inline LL Solve(LL x){ LL len(0),tmp(x),ret(0); while(tmp) a[++len]=tmp%10,tmp/=10; for(LL i=len-1;i>=1;--i){ for(LL j=0;j
=2) ret+=dp[i][j]; if(abs(a[i]-a[i+1])<2) break; } for(LL i=1;i

转载于:https://www.cnblogs.com/y2823774827y/p/10385132.html

你可能感兴趣的文章
[算法]死磕二叉树专题算法
查看>>
MySQL知识点小结
查看>>
(leetcode题解)Third Maximum Number
查看>>
DOM
查看>>
Apache Qpid Broker云
查看>>
Algorithm --> 爬楼梯求最大分数
查看>>
My SQL
查看>>
apl脚本入门-脚本中定义方法(函数), 类
查看>>
mysql通过ibd恢复数据
查看>>
一个分页功能的实现
查看>>
cookie 与 session
查看>>
软件定义存储
查看>>
Android中的一些基础知识(三)
查看>>
移除手机端a标签点击自动出现的边框和背景
查看>>
centos7 忘记root密码解决方法
查看>>
最小生成树算法讨论(转)
查看>>
.h与.c的区别和联系
查看>>
JAVA中堆栈和内存分配原理
查看>>
strpbrk函数
查看>>
开通博客园
查看>>