Seven Segment Display
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3962
题解:数位DP
/*
*@Author: STZG
*@Language: C++
*/
#include <bits/stdc++.h>
#include<iostream>
#include<algorithm>
#include<cstdlib>
#include<cstring>
#include<cstdio>
#include<string>
#include<vector>
#include<bitset>
#include<queue>
#include<deque>
#include<stack>
#include<cmath>
#include<list>
#include<map>
#include<set>
//#define DEBUG
#define RI register int
using namespace std;
typedef long long ll;
//typedef __int128 lll;
const int N=100000+10;
const int MOD=1e9+7;
const double PI = acos(-1.0);
const double EXP = 1E-8;
const int INF = 0x3f3f3f3f;
ll t,n,m,k,q;
int ans,cnt,flag,temp;
int a[20];
int dig[20];
ll dp[20][100];
ll dfs(int pos,int sum,bool limit){if(pos<0)return sum;if(!limit&&dp[pos][sum]!=-1)return dp[pos][sum];int res=limit?dig[pos]:15;ll ans=0;for(int i=0;i<=res;i++){ans+=dfs(pos-1,sum+a[i],limit&&i==res);}if(!limit)dp[pos][sum]=ans;return ans;
}
ll sloved(ll x){for(int i=0;i<8;i++){dig[i]=x%16;x/=16;}return dfs(7,0,1);
}
int main()
{
#ifdef DEBUGfreopen("input.in", "r", stdin);//freopen("output.out", "w", stdout);
#endif//memset(dp,-1,sizeof(dp));a[0]=6, a[1]=2, a[2]=5, a[3]=5;a[4]=4, a[5]=5, a[6]=6, a[7]=3;a[8]=7, a[9]=6, a[10]=6,a[11]=5;a[12]=4,a[13]=5,a[14]=5,a[15]=4;scanf("%d",&t);while(t--){scanf("%lld%llX",&n,&m);n--;ll l=m;ll r=l+n;if(r>4294967295ll){r%=4294967296ll;printf("%lld\n",sloved(4294967295ll)-sloved(l-1)+sloved(r));}else{printf("%lld\n",sloved(r)-sloved(l-1));}}//cout << "Hello world!" << endl;return 0;
}
Seven Segment Display相关推荐
- TM1637芯片驱动数码管 – play with TM1637 seven segment display driver
因为一个项目要使用到数码管,所以今天研究了一下TM1637这款数码管驱动芯片,在这里做个记录,方便以后使用时参考. 最初以为芯片是I2C通信,想将几块不同的芯片挂在同一个I2C总线上,然后开始了研究. ...
- ZOJ 3962:Seven Segment Display(思维)
https://vjudge.net/problem/ZOJ-3962 题意:有16种灯,每种灯的花费是灯管数目,代表0~F(十六进制),现在从x开始跳n-1秒,每一秒需要的花费是表示当前的数的花费之 ...
- ZOJ 3962 Seven Segment Display(数位DP)题解
题意:给一个16进制8位数,给定每个数字的贡献,问你贡献和. 思路:数位DP,想了很久用什么表示状态,看题解说用和就行,其他的都算是比较正常的数位DP. 代码: #include<iostrea ...
- 语音识别项目报告.pdf
您所在位置:网站首页 > 海量文档  > 中学教育 > 中学课件 语音识别项目报告.pdf61页 本文档一共被下载:次 ...
- STM32CUBEMX 配置12脚3641BS以及串口显示RTC时间
最近在学习STM32F4系列的RTC时钟系统,同时也在学习4位7段数码管显示驱动.而市面上很多3641BS数码管都是集成了74HC595移位寄存器芯片的PCB板,故网上大多基于STM32驱动该型号数码 ...
- Nexys2七段LED显示操作
首先,翻译一下使用手册上的说明: Nexys2开发板包含四位公共阳极七段LED显示屏. 每一个数字由按数字"8"图案排列的七个片段组成,其中嵌入有LED灯. 每段LED可以单独点亮 ...
- 生产实习(制作温度计)
作业要求:焊接电路板,编译代码,并且上传到onenet平台并且显示器能够显示温度. 先展示一下最终结果: onenet平台: 串口监视器: 实物图: 感想:首先,焊接电路板感觉挺有意思的,也比较简单. ...
- android 电路模拟器,仿真电路模拟器(专业版)
一款Android平台上的SPICE模拟器,SPICE是Simulation Program with Integrated Circuit Emphasis的缩写,是一种功能强大的通用模拟电路仿真器 ...
- Nexys A7 上手历程 【流水灯】
Nexys A7 上手历程 [流水灯] 一.Nexys A7简介 二.流水灯工程 一.Nexys A7简介 官网上下载原理图和相关引脚配置资料:https://digilent.com/referen ...
最新文章
- 单点登录(SSO)—简介
- c#下实现GUI编程_程序员会懂的冷笑话:各大编程语言的内心独白
- [技术分享]利用MSBuild制作msf免杀的后门
- mysql慕课网笔记_mysql学习笔记
- 爬虫:突破有道翻译js加密(最新)
- HTTPS时代已来,你做好准备了吗?
- Apache Cordova介绍
- SQL中触发器实例讲解(转)
- 12款很酷的使用大头照的国外名片设计作品
- (转)对各种初始化函数的理解:OnInitDialog、InitInstance、InitApplication函数的理解...
- 计算机科学与技术专业大学排名2020,2020计算机科学与技术专业最好大学排名:160余所大学上榜...
- 开课吧Java课堂:如何创建多线程
- 你属于哪种性感女人?
- mysql导出excelsql语句乱码_excel打开是乱码-悄悄告诉你,MySQL 通过SQL语句导出到Excel的方法...
- 【文件处理】python 在线预览文件_OFFICE 文档转换为html在线预览
- SQL学习之使用order by 依照指定顺序排序或自己定义顺序排序
- matlab自动对齐
- 【手机下载Linux】
- Day10QRadiobutton2021-09-24
- 常用开发工具 之 SQLite 数据库 与 Navicat for SQLite 的下载、安装与简单使用说明
热门文章
- 坐标偏差大_控制点的坐标复核(二)
- 改变uTools的插件安装/数据目录
- ps怎么清屏_PS:oracle恢复删除的数据
- java hql多条件查询_Hibernate结合JPA编写通用泛型多条件查询
- oracle 数据 时间间隔,如何掌握 Oracle 中的时间间隔型数据
- 手机cpu排行_鲁大师手机芯片排行榜:麒麟990第四,骁龙855第五!
- 深度学习和目标检测系列教程 16-300:通过全球小麦数据集训练第一个yolov5模型
- 博士申请 | 澳大利亚悉尼科技大学招收人工智能/软件工程方向全奖博士生
- 漫谈度量学习(Distance Metric Learning)那些事儿
- 招聘一周 | 腾讯、华为、微软、中科院自动化所等12家公司热招职位汇总