HDU 2089 简单数位dp
1、HDU 2089 不要62 简单数位dp
2、总结:看了题解才敲出来的,还是好弱。。
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std; int dp[][]; //dp[i][j]表示以j为首位符合条件的i位数的个数 void init() //预处理
{
memset(dp,,sizeof(dp));
dp[][]=;
for(int i=;i<;i++){
for(int j=;j<;j++){ //枚举第i位
for(int l=;l<;l++){ //枚举第i-1位
if(j!=&&(!(j==&&l==))){
dp[i][j]+=dp[i-][l];
}
}
}
}
} int cal(int num)
{
int a[],k=,sum=;
while(num){
a[++k]=num%;
num/=;
} a[k+]=;
for(int i=k;i>;i--){
for(int j=;j<a[i];j++){
if(j!=&&!(a[i+]==&&j==)){
sum+=dp[i][j];
}
}
if(a[i]==||(a[i+]==&&a[i]==)){ //因为是从首位开始,如果前面已经不符合,后面就没必要进行了
break;
}
} return sum;
} int main()
{
init();
int n,m;
while(scanf("%d%d",&n,&m)!=EOF,n&&m)
{
printf("%d\n",cal(m+)-cal(n)); //cal函数没有考虑到num本身
} return ;
}
HDU 2089 简单数位dp的更多相关文章
- HDU5898、 HDU 2089(数位DP)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5898 题意:很明确,找出区间[l , r]中符合连续奇数为偶数,连续偶数为奇数的个数. 思路:dp[i ...
- 【数位dp】【HDU 3555】【HDU 2089】数位DP入门题
[HDU 3555]原题直通车: 代码: // 31MS 900K 909 B G++ #include<iostream> #include<cstdio> #includ ...
- hdu 2089 入手数位dp问题
数位dp解决的问题是指求在一段数的区间里面 满足条件的数的个数 核心为两点 http://wenku.baidu.com/link?url=tpfIYzhx_MzevpIM58UZ66pr-87MCF ...
- HDU(2089),数位DP
题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=2089 不要62 Time Limit: 1000/1000 MS (Java/Others ...
- Bomb HDU - 3555 (数位DP)
Bomb HDU - 3555 (数位DP) The counter-terrorists found a time bomb in the dust. But this time the terro ...
- HDU(4734),数位DP
题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=4734 F(x) Time Limit: 1000/500 MS (Java/Others) ...
- HDU(3555),数位DP
题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=3555 Bomb Time Limit: 2000/1000 MS (Java/Others ...
- HDU 3555 Bomb 数位dp
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3555 Bomb Time Limit: 2000/1000 MS (Java/Others) Mem ...
- HDU 3853LOOPS(简单概率DP)
HDU 3853 LOOPS 题目大意是说人现在在1,1,需要走到N,N,每次有p1的可能在元位置不变,p2的可能走到右边一格,有p3的可能走到下面一格,问从起点走到终点的期望值 这是弱菜做的第 ...
随机推荐
- 团队作业-第二周-SRS文档
移动课堂点名的用例图:
- android 入门-布局
android:gravity 针对本view 的位置. android:layout_gravity 本view相对于父布局view的位置. android:layout_alignParentRi ...
- linux驱动程序设计的硬件基础,王明学learn
linux驱动程序设计的硬件基础(一) 本章讲总结学习linux设备程序设计的硬件基础. 一.处理器 1.1通用处理器 通用处理器(GPP)并不针对特定的应用领域进行体系结构和指令集的优化,它们具有一 ...
- LeetCode——Same Tree(判断两棵树是否相同)
问题: Given two binary trees, write a function to check if they are equal or not. Two binary trees are ...
- ObCallback回调钩子检测
ObCallback回调钩子检测 2013-12-20 Nie.Meining Ring0 在 PatchGuard 的摧残下,通过 ObRegisterCallbacks 函数注册回调钩子已经成了 ...
- 封装用className选元素
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- hadoop中map和reduce的数量设置问题
转载http://my.oschina.net/Chanthon/blog/150500 map和reduce是hadoop的核心功能,hadoop正是通过多个map和reduce的并行运行来实现任务 ...
- 【maven】 maven的setting.xml文件的详解
1 Maven的安装 安装Maven之前要确保已经安装好了jdk,并且配置好了环境变量JAVA_HOME.具体安装步骤如下: 从apache网上下载maven项目的压缩包.下载地址为:ht ...
- 《DSP using MATLAB》示例Example5.5
代码: %% ---------------------------------------------------------- %% START N=5 %% ------------------ ...
- 寒冰王座(DGA最长路/完全背包)
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission( ...