HDU 3555 Bomb(数位dp)

[HDU 3555] Bomb [数位DP] Source 2010 ACM-ICPC Multi-University Training Contest(12) http://acm.hdu.edu.cn/showproblem.php?pid=3555#include<cstdio> #include<iostream> #include<algorithm> #include<cmath> #include<cstring> #def 阅读详情

题目链接:HDU 3555 Bomb

数位dp。

这个题有三种状态,0表示前一位不是4并且前几位没有49,1表示前一位是4并且前几位没有49,2表示前几位有49。

剩下的全写在注释上了。

#include <iostream>
#include <cstring>

using namespace std;

const int MAX_N = 20 + 5;
long long dp[MAX_N][3];
long long num[MAX_N];
long long n;
int T;

long long f(int pos, int st, bool limit)
{
    if(pos == -1)
        return st == 2;
    if(!limit && dp[pos][st] != -1)
        return dp[pos][st];
    long long ans = 0;
    int last = limit ? num[pos] : 9;
    for(int i = 0; i <= last; i++)
    {
        int temp = st;//开始没这么写,返回值一直是0。。。
        if(st == 1 && i == 9)//前一位是4,这一位是9
            temp = 2;
        else if(st == 1 && i != 4)//前一位是4,这一位不是4
            temp = 0;
        else if(i == 4 && st != 2)//这一位是4并且前边不包括49,即st != 2
            temp = 1;
        ans += f(pos - 1, temp, limit && i == last);
    }
    if(!limit)
        dp[pos][st] = ans;
    return ans;
}
long long cal(long long n)
{
    int pos = 0;
    while(n > 0)
    {
        num[pos] = n % 10;
        n /= 10;
        pos++;
    }
    return f(pos - 1, 0, 1);
}
int main()
{
    cin >> T;
    memset(dp, -1, sizeof(dp));
    while(T--)
    {
        cin >> n;
        cout << cal(n) << endl;
    }
    return 0;
}


Podman修改镜像源教程(附最新docker镜像源) 阅读详情

相关推荐

MS1861宏晶微视频显示与控制器芯片:开发资料全解析与应用指南

本文全面解析了宏晶微MS1861视频显示与控制器芯片的核心功能与开发流程。该芯片作为高性能的“视频信号翻译官”,支持HDMI、LVDS等多种输入与MIPI、LVDS等输出,集成强大的图像处理与OSD叠加功能。文章详细介绍了从资料获取、环境搭建到以HDMI转MIPI为例的实战配置与调试技巧,为工业HMI、广告机等应用的开发者提供了完整的应用指南。

weixin_29198045的博客 338

HDU 3555 Bomb(数位DP)

HDU 3555 Bomb(数位DP) ACM 题目地址:HDU 3555 题意:  问(0, n]里面有几个数有'49'这个子串。 分析:  裸数位DP。  直接用DFS做。  就是输入输出比较坑,杭电貌似都要用__int64。 代码: /* * Author: illuz * File: 3555.cpp * Cr

水果君の日常 4654

PowerBI启动故障排查:环境变量与兼容性设置全指南

本文详细解析了PowerBI启动故障的常见问题,如空白界面和闪退,并提供了环境变量修改与兼容性设置的全方位解决方案。通过调整WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS环境变量和设置兼容模式,有效解决PowerBI启动问题,提升软件运行稳定性。

weixin_29255731的博客 471

(数位dp)HDU3555 Bomb

HDU3555 Bomb 题意&思路: 给个n,计算1~n中子串含有“49”的数。 对于这种求一个区间内含有某种特征的数,一般用数位dp。数位dp就是数字的位上dp,例如这题给的范围是到263-1约等于1019,如果枚举遍历判断的话,肯定会T。如果是数位的话,就只要枚举19位的情况。 听起来是不是感觉很简单 实在是太难了,看了好多大佬的题解和分析才懂了一点点。 数位dp借助于dfs和记忆...

Z7784562的博客 257

A Side Scan Sonar Image Denoising Algorithm Based on Compound of Fuzzy Weighted Average and Kalman F

Abstract 水下侧扫声纳图像的噪声来源:高斯噪声、脉冲、斑点噪声。 传统方法只能移除部分噪声,并且去噪后容易造成细节模糊。 本文在考虑到噪声的随机性以后,提出一种融合了模糊加权平均和卡尔曼滤波的去噪方法。 在最大化保留图像细节的基础上,同时去除高斯噪声和脉冲噪声 一.Introduction 由于海底环境和声波自身干涉的影响,声纳图像生成的图像难免会有噪点。声纳采集的图像通常会有高斯噪声、脉...

qq_44516871的博客 928

【实战解析】RTL8306MB交换芯片驱动开发中的RMII接口调试陷阱

本文深入剖析了RTL8306MB交换芯片驱动开发中RMII接口的典型调试陷阱。通过一个工业网关项目的实战案例,揭示了因硬件原理图设计疏忽导致TX_EN与CRS_DV信号线错接,从而引发网络“哑火”的根本原因。文章详细展示了使用示波器从时钟、数据到控制信号的系统性排查方法,并总结了关键的设计警示与自查清单,为嵌入式网络开发中的软硬件协同调试提供了宝贵经验。

qqq44的博客 1029

数位DP入门之hdu 3555 Bomb

数位DP入门之hdu 3555 Bomb 题意: 在1~N(1<=N<=2^63-1)范围内找出含有’49’的数的个数; 与hdu 2089 不要62的区别:2089是找不不含’4’和’62’的区间范围内的数,此题是含有;正好相反,对于 “不要62”只是用第二位表示首位数字,这一题呢? 看转化:易知一定要要知道首位是9的个数,才能在前面加4得到’49’,但是什么状态能从不含’49’转移到含’49

hxer 619

将 AMDP Function Implementations 讲透:从 SAP CDS View 表函数到 AMDP 方法的完整实战与最佳实践

AMDP函数实现:连接ABAP与HANA的高效桥梁 本文面向ABAP开发者,详细解析AMDP函数实现技术,帮助在SAP HANA环境中充分发挥数据库算力。核心内容包括: 技术价值:解决复杂计算场景(窗口函数、跨表聚合等)中Open SQL和CDS的局限性 两种实现类型:内部复用函数与CDS表函数实现,对比其声明规则和用途差异 关键语法要点:FOR TABLE FUNCTION绑定、只读约束、参数与返回类型自动生成机制 实战应用:以采购订单聚合为例,展示AMDP在实时报表中的性能优势 完整示例:提供基于航线数

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 388

【HDU】3555 Bomb 数位DP

传送门:【HDU】3555 Bomb 题目分析:shu

poursoul 817

DeFi核心协议代码解析

本文解析了DeFi两大核心协议Uniswap V2和Compound的智能合约架构与关键代码。Uniswap V2采用恒定乘积公式(x*y=k)实现自动做市,核心合约包括Factory、Pair和Router,具备流动性铸造、代币兑换和TWAP预言机功能。Compound借贷协议通过cToken合约管理存款和借款,采用动态利率模型和抵押率机制,包含资金利用率计算、清算触发等核心算法。两协议均采用模块化设计,通过智能合约实现去中心化金融服务的核心逻辑。

闲人编程的博客 935

【查找单入口空闲区域】-python实现-附ChatGPT解析

时间限制:1s 空间限制: 256MB 限定语言:不限题目描述:给定一个 m x n 的矩阵,由若干字符X’和 O构成,"X表示该处已被占据,O表示该处空闲,请找到最大的单入口空闲区域。空闲区域是由连通的O组成的区域,位于边界的O可以构成入口,单入口空闲区域即有且只有一个位于边界的o作为入口的由连通的O组成的区域如果两个元素在水平或垂直方向相邻,则称它们是“连通”的。第一行输入为两个数字,第一个数字为行数m,第二个数字列数n,两个数字以空格分隔,1

sinat_29950703的博客 243

HDU-3555-Bomb【数位dp】

HDU-3555-Bomb【数位dp】

Linoy 1067

图像处理系列——直方图之直方图规定化(Histogram Specification)

直方图规定化也叫直方图匹配(Histogram Matching),让原图像的像素分布与规定图像的像素分布保持一致。直方图规定化比直方图均衡化更加灵活,算是直方图均衡的变种。常用于图片风格一致性的自动处理,能有效的改善图像的整体或局部的特征,广泛运用在图像增强处理中。

nanke_yh的博客 4595

HDU3555 Bomb —— 数位DP

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3555 Bomb Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/Others) Total Submission(s): 18739    Accepted Submissi

A man can be destroyed, but not defeated. 543

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

HDU3555 Bomb【数位DP+记忆化搜索】

Bomb Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/Others) Total Submission(s): 23077    Accepted Submission(s): 8683   Problem Description The counter-terrorists fou...

海岛Blog 707

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

HDU 3555 Bomb (数位DP)

原题地址:传送门    (http://acm.hdu.edu.cn/showproblem.php?pid=3555) Bomb Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/Others) Total Submission(s): 13836    Accepted S

Lulu11235813的博客 834

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

HDU3555 Bomb[数位DP]

B - Bomb  HDU - 3555  题解: 只要记录下三个状态,0号状态代表前面没有4,也没有49,1号状态代表前一位是4,那么只要当前位是9,就可以直接把状态转成2号状态,即当前的数已经存在49后面的数可以任意枚举。 #pragma comment(linker, "/STACK:102400000,1024

ControlBear的博客 424

HDU3555 Bomb【数位DP】

题目链接:HDU3555 Bomb 题意:问1~n中含有49的个数; 分析:首先用init()找到n位数有多少含有49的数; dp[i[[j]用于存储符合条件的数的个数 i代表目前处理的数长度为i;这里dp[i][j]处理的数可包含前导零; dp[i][0]代表长度为i的数中不含49数的数量; dp[i][1]代表长度为i的数中不含49但是最高位为9的数的数量; dp[i][2]代表长...

MaJorieL 159

【数位DP】Bomb HDU3555

Bomb Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/Others) Total Submission(s): 3206    Accepted Submission(s): 1141 Problem Description The counter-terrorists f

Jiangzh_MZOI 689

HDU 3555 Bomb(数位DP)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3555BombTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others) Total Submission(s): 16312 Accepted Submission(s): 5961Pr

linlinsong—ACM界蒟水! 330

hdu3555 Bomb 【数位dp+记忆化dfs】

题目链接:hdu3555 Bomb题意: t组样例,给正整数n(n<=263−1)(n<=2^{63}-1),输出[1, n]中包含”49”的数的个数。数位dp第一发; dp预处理出[0,10],[0,100]...[0,1020][0,10],[0,100]...[0,10^{20}] 的答案,根据n每位的值按情况累加即可; 注意n包括49的情况, 例如n=234950这种情况, 49之后不

lh的博客 584

HDU 3555 Bomb【数位DP】

BombBombBomb Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others) Total Submission(s): 26150 Accepted Submission(s): 9915 Problem Description The counter-terrori...

qq_43710979的博客 162

【HDU 3555】 Bomb 数位dp

Problem Description The counter-terrorists found a time bomb in the dust. But this time the terrorists improve on the time bomb. The number sequence of the time bomb counts from 1 to N. If the current...

待到山花烂漫时 266

HDU-3555 Bomb (数位DP)

数位DP入门题 设dp[i][0]表示长度为i,不含49的数字个数;dp[i][1]表示长度为i,不含49且最高位为9的数字个数;dp[i][2]表示长度为i,含有49的数字个数 不是很明白为什么第二维状态要这样取...

idealism_xxm的专栏 1228

hdu 3555 Bomb(数位dp)

目录问题状态转移从低位到高位从高位到低位状态设计位最大值代码 问题 hdu 3555 Bomb - https://acm.hdu.edu.cn/showproblem.php?pid=3555 状态转移 从低位到高位 #mermaid-svg-JIHWQ9dVCvhH05JU .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#merma

jpphy0的博客 203
上一篇: UVa 10594 Data Flow(无向图的费用流)
下一篇: UVa 515 King(差分约束系统)
小爷永远不死
博客等级 码龄15年 58粉丝 363原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值