D - Bomb
2024-10-20 08:23:21
//反向62
#include <iostream>
#include <algorithm>
#include <string>
#include <cstring>
#include <cstdio>
using namespace std; typedef long long ll;
// const int maxn = 1e5+5;
ll n;
ll a[];
ll dp[][]; //下标,前面是否4,是否有前导0, 是否有限制
ll dfs(ll pos, ll sta, ll pre, ll limit){
if(pos == -) return ;
if(!limit && dp[pos][sta] != -)
return dp[pos][sta];
int up = limit?a[pos]:;
ll ans = ;
for(int i = ;i <= up;i++){
if(pre == && i == ){
continue;
}
ans += dfs(pos-, i == , i, limit && i == a[pos]);
}
if(!limit) dp[pos][sta] = ans;
return ans;
} ll solve(ll x){
ll pos = ;
while(x){
a[pos++] = x%;
x /= ;
}
return dfs(pos-, , -, true);
} int main(){
memset(dp, -, sizeof dp);
int t;
scanf("%d", &t);
while(t--){
scanf("%lld", &n);
ll ans = solve(n);
printf("%lld\n", n - ans + );
}
return ;
}
最新文章
- 初步认识Node 之Express
- shell脚本实现随机筛选
- 取消Git代理设置
- [Android Tips] 2. Disable recent apps dialog on long press home button
- java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntim [问题点数:40分,结帖人wangxiaohua_001]
- JavaScript学习基础部分
- Linux下的Shell编程
- 虚拟机VMware 9安装苹果MAC OSX 10.8图文教程
- 嵌入式控制(0)----linux系统网络配置
- zoj3640(概率dp)
- 初学安卓开发随笔之 Menu、toast 用法、活动的四种启动模式 以及 一个方便的Base活动类使用方法
- JS中将一个值转换为字符串的3种方法
- 解决connect() failed (111: Connection refused) while connecting to upstream
- org.hibernate.ObjectNotFoundException: No row with the given identifier exists解决办法
- spring okhttp3
- Linux动态频率调节系统CPUFreq之一:概述【转】-- 非常好的博客
- C++函数模版的简单使用
- 汇编 OD 调式
- 玩转X-CTR100 l STM32F4 l HMC5983/HMC5883L三轴磁力计传感器
- 有关Firefox/Chrome的问题汇总
热门文章
- The PageFactory
- POj 3253 Fence Repair(修农场栅栏,锯木板)(小根堆 + 哈弗曼建树得最小权值思想 )
- Codeforces Round #379 (Div. 2) D. Anton and Chess —— 基础题
- UVA10129 Play on Words —— 欧拉回路
- MYSQL进阶学习笔记十八:MySQL备份和还原!(视频序号:进阶_37)
- cocoapod使用
- easyui-tabs 在ie8下基于iframe嵌套页面加载成功后切换空白问题
- Python:深浅拷贝
- H3C-交换机密码恢复
- c++11 右值引用和移动语义