难受啊!!越做题是越感觉菜,这个又被几个坑给卡住了(只有我这个学渣才会卡)

坑点:1.考虑n是否已包含49,有的话还要再+1.

2, 注意从最高开始考虑时,再判断时要考虑它本身为0的情况,.比如n=5701,在考虑最高位时,其实是在考虑0~5000所能组成的含49的数的个数,这个是包含f[i][2]中的前导0并且千位最高位也可为0

#include<bits/stdc++.h>
using namespace std;
//#define LL long long
typedef __int64 LL;
LL f[][];
int n[];
void init()
{
// f[1][9]=1;
// f[1][0]=10;
memset(f,,sizeof(f));
f[][]=;
for(int i=; i<=; i++)
{
f[i][]=f[i-][]*+f[i-][];
f[i][]=f[i-][];
f[i][]=f[i-][]*-f[i-][];
}
}
int main()
{
int t;
scanf("%d",&t);
init();
// for(int i=1;i<=20;i++)
// printf("%lld\n",f[i][1]+f[i][0]);
while(t--)
{
// string s;
// cin>>s;
// for(int i=0; i<s.size(); i++)
// n[s.size()-i]=s[i]-'0';
LL a;
scanf("%I64d",&a);
int len=;
LL ans=;
int flag=;
a++;
while(a)
{
n[++len]=a%;
a/=;
}
n[len+]=;
for(int i=len; i>=; i--)
{
ans+=n[i]*f[i-][];
if(flag)
ans+=n[i]*f[i-][];
else if(n[i]>)
ans+=f[i-][];
if(n[i+]==&&n[i]==)
flag=;
}
printf("%I64d\n",ans);
}
return ;
}

数位dp-Bomb的更多相关文章

  1. hdu3555 Bomb (记忆化搜索 数位DP)

    http://acm.hdu.edu.cn/showproblem.php?pid=3555 Bomb Time Limit: 2000/1000 MS (Java/Others)    Memory ...

  2. hdu---(3555)Bomb(数位dp(入门))

    Bomb Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/Others)Total Submi ...

  3. HDU 3555 Bomb 数位dp

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3555 Bomb Time Limit: 2000/1000 MS (Java/Others) Mem ...

  4. HDU 3555 Bomb(数位DP)

    Bomb Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/Others) Total Subm ...

  5. Bomb HDU - 3555 (数位DP)

    Bomb HDU - 3555 (数位DP) The counter-terrorists found a time bomb in the dust. But this time the terro ...

  6. [暑假集训--数位dp]hdu3555 Bomb

    The counter-terrorists found a time bomb in the dust. But this time the terrorists improve on the ti ...

  7. HDU3555 Bomb —— 数位DP

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3555 Bomb Time Limit: 2000/1000 MS (Java/Others)    M ...

  8. HDU 3555 Bomb(数位DP模板啊两种形式)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3555 Problem Description The counter-terrorists found ...

  9. hud 3555 Bomb 数位dp

    Bomb Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/Others) Total Subm ...

  10. Hdu Bomb(数位DP)

    Bomb Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others) Total Submiss ...

随机推荐

  1. python&django 实现页面中关联查询小功能(基础篇)

    效果 实现效果图如下,根据过滤条件查询相关信息. 知识点 1.配置URL,在路由中使用正则表达式 2.过滤查询 代码 setting.py from django.contrib import adm ...

  2. 【转】Python多进程编程

    [转]Python多进程编程 序. multiprocessingpython中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程.Pytho ...

  3. Windows Server 2012安装.NET Framework 3.5

    1 文件获取地址 链接:https://pan.baidu.com/s/1o7wykEKKrzbVslSeHbBigA 提取码:e59o 2 安装原因 在Windows Server 2012上安装一 ...

  4. 不能忽视 php warning

    2018-12-5 10:50:22 星期三 遇到一个问题: 前一行是取数组中的某一个值, 后一行是用heredoc输出一串javascript脚本; 因为取数组中值的时候键不存在, 导致后续输出的j ...

  5. loj题目总览

    --DavidJing提供技术支持 现将今年7月份之前必须刷完的题目列举 完成度[23/34] [178/250] 第 1 章 贪心算法 √ [11/11] #10000 「一本通 1.1 例 1」活 ...

  6. vue中展示数据

    1.v-bind,直接把数据绑定进去了.*100是因为传过来的数据为数字0.3这样子,要转换成百分比 2.整个的数据再data中定义之后,就能在页面直接绑定,v-for,v-if等单独再设置.

  7. Map,HashMap,LinkedHashMap,TreeMap比较和理解

    /* * 获取功能: * V get(Object key):根据键获取值 * Set<K> keySet():获取集合中所有键的集合 * Collection<V> valu ...

  8. struts2第一章-基本用法

    一.struts简介 1.回顾 MVC M-model模型层 V-view 视图层  前端界面 C-controller 控制层 struts2: Apache提供的开源的控制层框架,相当于servl ...

  9. PowerDesigner15连接Oracle数据库并导出Oracle的表结构

    PowerDesigner连接Oracle数据库,根据建立的数据源进行E-R图生成.详细步骤如下: 1.启动PowerDesigner 2.菜单:File->Reverse Engineer - ...

  10. Spring MVC基本概念

    MVC工作原理: 模型-视图-控制器(MVC)是一个以设计界面应用程序为基础的设计模式.它主要通过分离模型.视图及控制器在应用程序中的角色将业务逻辑从界面中解耦.通常,模型负责封装应用程序数据在视图层 ...