2019-02-27-PAT乙级-1021-个位数统计

2019-02-27-PAT乙级-1021-个位数统计

2019-02-27-PAT乙级-1021-个位数统计

原文链接:PAT乙级-1021-个位数统计

github代码地址:HibisciDai/OJ-PAT-ACM

2019-02-27-PAT乙级-1021-个位数统计

编程描述

给定一个 k 位整数 N=$d_{k−1}$ $10^{k−1}$+⋯+$d_{1}$ $10^{1}$+$d_{0}$ (0≤$d_{i}$≤9, i=0,⋯,k−1, $d_{k−1}$>0),请编写程序统计每种不同的个位数字出现的次数。例如:给定 N=100311,则有 2 个 0,3 个 1,和 1 个 3。

辅助描述

1
2
3
4
5
作者: CHEN, Yue
单位: 浙江大学
时间限制: 400 ms
内存限制: 64 MB
代码长度限制: 16 KB

输入格式

每个输入包含 1 个测试用例,即一个不超过 1000 位的正整数 N

输出格式

N 中每一种不同的个位数字,以 D:M 的格式在一行中输出该位数字 D 及其在 N 中出现的次数 M。要求按 D 的升序输出。

输入样例

1
100311

输出样例

1
2
3
0:2
1:3
3:1

算法实现

JAVA(openjdk)

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import java.util.Scanner;

public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String input = sc.next();
sc.close();
int[] count = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
for (int i = 0; i < input.length(); i++) {
count[input.charAt(i) - 48]++;
}

for (int i = 0; i < 10; i++) {
if (count[i] != 0) {
System.out.printf("%d:%d\n", i, count[i]);
}
}
}
}

运行结果

1
2
3
4
5
6
状态	分数	题目	编译器	耗时	用户	
答案正确 15 1021 Java (openjdk) 129 ms HibisciDai
测试点 结果 耗时 内存
0 答案正确 105 ms 16944 KB
1 答案正确 112 ms 18156 KB
2 答案正确 129 ms 18312 KB
文章作者: HibisciDai
文章链接: http://hibiscidai.com/2019/02/27/2019-02-27-PAT乙级-1021-个位数统计/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 HibisciDai
支付宝打赏
微信打赏