51nod 1623 完美消除(数位DP)

  首先考虑一下给一个数如何求它需要多少次操作。

  显然用一个单调栈就可以完成:塞入栈中,将比它大的所有数都弹出,如果栈中没有当前数,答案+1。

  因为数的范围只有0~9,所以我们可以用一个二进制数来模拟这个栈,并塞到DP的状态里。

  设$dp[i][j][k]$表示前i位数,已经进行了j次操作,栈的状态为k的方案数。

  每次枚举一个数的时候,先把比这个数大的数在状态中都清零,再看看状态中有没有这个数,没有的话答案+1。

  注意需要把状态初始值设为0在栈中...T T

#include<iostream>
#include<cstring>
#include<cstdlib>
#include<cstdio>
#define ll long long
using namespace std;
ll l, r, K;
ll dp[20][20][1<<10];
int a[20];
ll dfs(int pos, int k, int st, bool limit)
{if(!pos) return k==K;if(!limit && dp[pos][k][st]!=-1) return dp[pos][k][st];int up=limit?a[pos]:9; ll ans=0;for(int i=0;i<=up;i++){int now=st;for(int j=i+1;j<=9;j++) now^=((now & (1<<j))!=0)<<j;if(st&(1<<i)) ans+=dfs(pos-1, k, now, limit && i==up);else if(k<K) ans+=dfs(pos-1, k+1, now|(1<<i), limit && i==up);}if(!limit) dp[pos][k][st]=ans;return ans;
}
ll solve(ll x)
{int pos=0;while(x) a[++pos]=x%10, x/=10;return dfs(pos, 0, 1, 1);
}
int main()
{memset(dp, -1, sizeof(dp));scanf("%lld%lld%lld", &l, &r, &K);printf("%lld\n", solve(r)-solve(l-1));
}
View Code

 

转载于:https://www.cnblogs.com/Sakits/p/8034800.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/267903.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Javascript-7对象:字符串、时间

JavaScript-7对象:字符串、时间字符串&#xff08;String&#xff09;对象&#xff1a; Javascript是面向对象的编程语言&#xff0c;我们可以定义自己的对象和变量类型。 计算字符串长度&#xff1a; var txt"Hello world!" document.write(txt.length) 结果为&…

代码 拉取_Git 利用 Webhooks 实现代码的自动拉取

WebHook 简介WebHook 功能是帮助用户 push 代码后&#xff0c;自动回调一个您设定的 http 地址。 这是一个通用的解决方案&#xff0c;用户可以自己根据不同的需求&#xff0c;来编写自己的脚本程序。环境服务器&#xff1a;ubuntuphp&#xff1a;7.2.28本文以拉取码云&#xf…

Git 分布式版本控制常用命令(1)

安装完成后,标定自己身份,配置自己的姓名与邮箱git config --global user.name "Name" git config --global user.email "examplemail.com" 初始化Git仓库git init 添加文件到Git仓库git add <file> git commit -m "Add some comment" 查看…

数据结构最短路径例题_数据结构算法实验8图的最短路径问题附源代码.doc

浙江大学城市学院实验报告课程名称 数据结构与算法实验项目名称 实验八 图的最短路径问题实验成绩 指导老师(签名 ) 日期实验目的和要求掌握图的最短路径概念。理解并能实现求最短路径的DijKstra算法(用邻接矩阵表示图)。二. 实验内容1、编写用邻接矩阵表示有向带权图时图的基本…

navicat连接mysql报10061错

可能原因&#xff1a;mysql服务未启动 解决办法&#xff1a;进入到计算机管理&#xff0c;找到服务&#xff0c;然后找到mysql服务&#xff0c;并启动该服务 转载于:https://www.cnblogs.com/mengyinianhua/p/8041201.html

长牙顺序

20个乳牙宝宝的诞生是有顺序的&#xff0c;虽然不一定一成不变&#xff0c;但是也可以作为参照的依据。 1.下乳中切牙 2.上乳中切牙 3.上乳侧切牙 4.下乳侧切牙 5.下第一乳磨牙 6.上第一乳磨牙 7.下乳尖牙 8.上乳尖牙 9.下第二乳磨牙 10.上第二乳磨牙 5~10个月&…

疲劳容器的定义_材料疲劳

结构力学材料疲劳什么是材料疲劳&#xff1f;材料疲劳 是一种结构在循环载荷作用下出现失效的现象。即使材料受到的应力远低于材料的静态强度&#xff0c;也可能会发生这种类型的结构损伤。疲劳是造成机械结构失效最常见的原因。组件在反复载荷作用下导致最终失效的过程&#x…

python天蝎座-day1笔记

一、接口测试即功能测试 最常见&#xff1a; get post 二、jmeter参数化有三种方法&#xff1a; 1、jmeter-选项-函数助手对话框-random-输入最小值和最大值&#xff0c;生成-将生成的函数字符串赋值到需要函数化的参数 2、添加配置元件&#xff1a;CSV Data Set Config&#x…

国产海量存储系统的新突破

3月8—14日&#xff0c;“十一五”国家重大科技成就展在北京国家会议中心举行。本次展览集中展出了一批对国民经济和社会发展有着重大影响、具有重大创新与突破和自主知识产权的重大标志性项目。 本次参展的项目约600项&#xff0c;参展实物近1000件&#xff0c;模型150多件。信…

软件工程电商系统数据库定义_某个电子商务系统项目的数据库设计

杨教授工作室&#xff0c;版权所有&#xff0c;盗版必究&#xff0c;1/13页11.1EbookStore/EBank项目的数据源设计1.1.1本项目中的数据库设计概述1、数据库设计(1)数据库设计方法一般数据库设计方法有两种,即属性主导型和实体主导型。属性主导型从归纳数据库应用的属性出发,在…

MYSQL高可用-Percona XtraDB Cluster

简介 Percona XtraDB Cluster是MySQL高可用性和可扩展性的解决方案&#xff0c;Percona XtraDB Cluster提供的特性如下&#xff1a; 1).同步复制&#xff0c;事务要么在所有节点提交或不提交。 2).多主复制&#xff0c;可以在任意节点进行写操作。 3).在从服务器上并行应用事件…

python 矩阵点乘_Day276:普通乘积、矩阵点乘、克罗内克积

1、普通矩阵乘法(matmul product)假设矩阵A大小是M*N&#xff0c;矩阵B大小是N*P&#xff0c;CAB这里选取一个例子这里的矩阵乘法要求相乘的两个矩阵一个的行数得等于另一个的列数&#xff0c;否则&#xff0c;无法进行乘机运算。2、矩阵点乘(hadamard product)矩阵点乘&#x…

java编程笔记18 文件压缩与解压缩

在java中&#xff0c;主要是利用ZipEntry&#xff0c;ZipInputStream和ZipOutputStream来实现zip数据压缩方式的编程方法&#xff0c; 构造方法摘要ZipEntry(String name) 使用指定名称创建新的 ZIP 条目。构造方法摘要ZipInputStream(InputStream in) 创建…

随机排列_图片视频特效一键生成,27 种特效可随机排列组合!

酷友们&#xff0c;大家好&#xff01;相信很多酷友喜欢刷抖音&#xff0c;抖音视频中有很多特效也很酷。其实这些特效称作故障艺术(Glitch Art)&#xff0c;就是利用事物形成的故障&#xff0c;进行艺术加工&#xff0c;使这种故障缺陷反而成为一种艺术品&#xff0c;具有特殊…

JMter随记

线程组&#xff08; Threads &#xff08;Users&#xff09;&#xff09;理解&#xff1a;一个虚拟用户组&#xff0c;线程组内线程数量在运行过程中不会发生改变。 注意事项&#xff1a;线程间变量相互独立。 一个测试计划内可以包含多个线程组。 可定义内容&#xff1a; 取样…

爱情 by叶挺王

所有的路 都是为你而铺设 所有的桥 都是为你而架备 所有的亭宇 都是为你而营造 所有的愿望 都是为你而存在 你是我的所有 为此 我日夜忧愁 漫漫长路 只怕你眷恋身后 危危廊桥 只怕你惊于飞流 幽幽楼阁 只怕你凄怨逗留 小小心愿 只怕你未能实现 为你忧愁 然而 我愿意 我愿意是路…

mysql 数据回滚_Mysql数据误删除快速回滚

作者 | Video极链科技OPSTeam整理 | 包包在数据库操作中&#xff0c;难免会因为各种各样的原因对数据造成损坏&#xff0c;这个时候就需要对数据库快速恢复。传统的方法会先恢复mysql备份&#xff0c;再去用mysqlbinlog抽取指定时间点的日志&#xff0c;再恢复&#xff0c;这样…

js 类数组arguments详解

arguments并不是一个真正的数组&#xff0c;而是一个“类似数组&#xff08;array-like&#xff09;”的对象&#xff1b; 就像下面的这段输出&#xff0c;就是典型的类数组对象&#xff1a; [12, 23, callee: ƒ, Symbol(Symbol.iterator): ƒ] 一、类数组 VS 数组 相同点&…

OSPF协议概述(一)

1. 根据来源不同&#xff0c;路由表中的路由通常可以分为以下三类: 链路层协议发现的路由&#xff08;也称为接口路由或直连路由&#xff09;。 由网络管理员手工配置的静态路由 动态路由协议发现的路由。&#xff08;RIP,OSPF,IS-IS&#xff09; 2. 距离矢量算法和…

深度工作:充分使用每一份脑力

浮躁已经成了普遍的社会现象。判断一个人是否浮躁非常容易&#xff0c;看他一天主动拿起手机的次数就可以了。据TED的演讲者说&#xff0c;这个值一般是50次&#xff0c;除了8小时的睡觉之外&#xff0c;基本上每20分钟就要去翻翻手机。 你会去用手机做什么&#xff1f;看微信&…