H
来源:互联网 发布:星际皆知你爱我微盘 编辑:程序博客网 时间:2024/06/11 21:12
https://vjudge.net/contest/155220#problem/H
大体意思为输入一个数n,从1数到n,计算0到9各出现了几次
思路:运用啊哈算法桶排序思想,数组名和数组的关系
注意:当n>=10时,有一个巧妙地方法,a[i%10]++;把个位数存起来,然后i=i/10;
代码:
#include <stdio.h>
#include <string.h>
int main()
{
int T,N,i,j;
int a[10];
scanf("%d",&T);
while (T--)
{
memset(a,0,sizeof(a));
scanf("%d",&N);
for (i=1;i<=N;i++)
{
j = i;
while (j>0)
{
a[j%10]++;
j /= 10;
}
}
for (i = 0;i < 9;i++)
printf("%d ",a[i]);
printf("%d\n",a[9]);
}
return 0;
}
0 0
- h
- h
- h
- ,h
- h
- h
- H
- h
- h
- h
- H
- h
- H
- H
- h
- H
- H
- h
- 关于idea新建子目录时往父目录名字后叠加而不是树形结构的解决方法
- Excel实现数据项校验的功能---VBA的编写以及数据有效性的设置
- Nginx服务器
- 侧滑
- nyistOJ-免费馅饼(DP)
- H
- 让ffmpeg支持输出h264格式
- SOJ 1038
- zookeeper 环境搭建
- centos7 编译安装mysql5.7+
- [leetcode]162. Find Peak Element
- PAT(A)-1130. Infix Expression (25)(树的中序遍历)
- MulticastSocket 广播学习
- Activity四种启动模式