洛谷 P1239 计数器
题目描述
一本书的页数为N,页码从1开始编起,请你求出全部页码中,用了多少个0,1,2,…,9。其中—个页码不含多余的0,如N=1234时第5页不是0005,只是5。
输入输出格式
输入格式:
一个正整数N(N≤10^9),表示总的页码。
输出格式:
共十行:第k行为数字k-1的个数。
输入输出样例
11
1
4
1
1
1
1
1
1
1
1
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
int n;
int num[];
int main(){
scanf("%d",&n);
for(int i=;i<=n;i++){
int x=i;
while(x){
num[x%]++;
x/=;
}
}
for(int i=;i<=;i++)
cout<<num[i]<<endl;
}
80分的暴力
正解思路:数位DP
f[i][j][k]表示有i位,最高位为j,数字k出现的次数。
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
int n,tot;
int ans[];
int sum[],num[];
int f[][][];
int main(){
scanf("%d",&n);
for(int i=;i<=;i++) f[][i][i]=;
sum[]=;
for(int i=;i<=;i++){
sum[i]=sum[i-]*;
f[i][][]=f[i-][][]*+f[i-][][]+sum[i];
for(int j=;j<=;j++) f[i][][j]=f[i-][][j]*+f[i-][j][j];
for(int j=;j<=;j++){
f[i][j][]=f[i-][][]*+f[i-][][];
for(int k=;k<=;k++){
if(j==k) f[i][j][k]=f[i-][][k]*+f[i-][k][k]+sum[i];
else f[i][j][k]=f[i-][][k]*+f[i-][k][k];
}
}
}
int x=n;
while(x){ num[++tot]=x%;x/=; }
for(int i=;i<tot;i++)
for(int j=;j<=;j++)
for(int k=;k<=;k++)
ans[k]+=f[i][j][k];
for(int i=tot;i>=;i--){
for(int j=;j<num[i];j++){
if(i==tot&&j==) continue;
for(int k=;k<=;k++) ans[k]+=f[i][j][k];
}
ans[num[i]]+=n%sum[i]+;
}
for(int i=;i<=;i++) printf("%d\n",ans[i]);
}
洛谷 P1239 计数器的更多相关文章
- [洛谷P3763] [TJOI2017]DNA
洛谷题目链接:[TJOI2017]DNA 题目描述 加里敦大学的生物研究所,发现了决定人喜不喜欢吃藕的基因序列S,有这个序列的碱基序列就会表现出喜欢吃藕的性状,但是研究人员发现对碱基序列S,任意修改其 ...
- [洛谷P3765]总统选举
题目大意:有$n(n\leqslant5\times10^5)$个数,有$m(m\leqslant5\times10^5)$次询问. 一次询问形如$l\;r\;s\;k\;w_1\;w_2\dots ...
- 洛谷P2866 [USACO06NOV]糟糕的一天Bad Hair Day
P2866 [USACO06NOV]糟糕的一天Bad Hair Day 75通过 153提交 题目提供者洛谷OnlineJudge 标签USACO2006云端 难度普及/提高- 时空限制1s / 12 ...
- 洛谷P2607题解
想要深入学习树形DP,请点击我的博客. 本题的DP模型同 P1352 没有上司的舞会.本题的难点在于如何把基环树DP转化为普通的树上DP. 考虑断边和换根.先找到其中的一个环,在上面随意取两个点, 断 ...
- 洛谷 P1855 榨取kkksc03 题解
P1855 榨取kkksc03 题目描述 洛谷2的团队功能是其他任何oj和工具难以达到的.借助洛谷强大的服务器资源,任何学校都可以在洛谷上零成本的搭建oj并高效率的完成训练计划. 为什么说是搭建oj呢 ...
- 【贪心】洛谷2019 OI春令营 - 普及组 作业
[P3817 小A的糖果 小A有N个糖果盒,第i个盒中有a[i]颗糖果. 小A每次可以从其中一盒糖果中吃掉一颗,他想知道,要让任意两个相邻的盒子中加起来都只有x颗或以下的糖果,至少得吃掉几颗糖. [贪 ...
- 洛谷P2787 语文1(chin1)- 理理思维
洛谷题目链接 珂朵莉树吼啊!!! 对于操作$1$,直接普通查询即可 对于操作$2$,直接区间赋值即可 对于操作$3$,其实也并不难,来一次计数排序后,依次插入即可,(注意初始化计数器数组)具体实现看代 ...
- 洛谷1640 bzoj1854游戏 匈牙利就是又短又快
bzoj炸了,靠离线版题目做了两道(过过样例什么的还是轻松的)但是交不了,正巧洛谷有个"大牛分站",就转回洛谷做题了 水题先行,一道傻逼匈牙利 其实本来的思路是搜索然后发现写出来类 ...
- 洛谷P1352 codevs1380 没有上司的舞会——S.B.S.
没有上司的舞会 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description Ural大学有N个职员,编号为1~N.他们有 ...
随机推荐
- echarts 地图 动态 展示 结合css+js
echarts地图展示功能非常强大,官网上静态展示的样例非常多了,动态的资料少.研究了下.我眼下实现的通过ajax从server获取数据动态展示地图. 另外,我们有时候希望在地图之上做些自己定义的东西 ...
- git ---- 产生冲突的场景 和解决办法
1.git冲突的场景 情景一:多个分支代码合并到一个分支时: 情景二:多个分支向同一个远端分支推送代码时: 实际上,push操作即是将本地代码merge到远端库分支上. 关于push和pull其实就分 ...
- 安装meteor运行基本demo发生错误。
bogon:~ paul$ curl https://install.meteor.com/ | sh % Total % Received % Xferd Average Speed Time Ti ...
- 归档备份被删,GoldenGate无法抽取数据
发生错误如下,源端EXTRACT进程异常中止,查看日志,发现如下错误. 2014-07-23 01:32:13 ERROR OGG-00446 Oracle GoldenGate Captur ...
- Zero-input latency scheduler: Scheduler Overhaul
Scheduler Overhaul, with contributions from rbyers, sadrul, rjkroege, sievers, epenner, skyostil, br ...
- CentOS 7.4 安装 网易云音乐
CentOS 7.4 安装 网易云音乐 本文包含: 安装dnf 编译gcc 5.4.0 安装各种包 安装网易云音乐贯穿全局; 安装环境: CentOS 7.4, kernel3.10.0, gcc4. ...
- java 多线程——join()方法
在java语言中,join()方法的作用是让调用该方法的线程在执行完run()方法后,再执行join 方法后面的代码. 简单点说就是,将两个线程合并,用于实现同步的功能. 具体而言:可以通过线程A的j ...
- 在 yii2.0 框架中封装导出html 表格样式 Excel 类
在 vendor/yiisoft/yii2/helpers/ 创建一个 Excel.php <?php namespace yii\helpers; class Excel{ ...
- UVA10269 Adventure of Super Mario(Floyd+DP)
UVA10269 Adventure of Super Mario(Floyd+DP) After rescuing the beautiful princess, Super Mario needs ...
- 怎样查看电脑的IP地址
在DOW窗体 :cmd->ipconfig 见截图: