计票统计

输入描述

输入候选人的人数,第二行输入候选人的名字,第三行输入投票人的人数,第四行输入投票。

输出描述

每行输出候选人的名字和得票数量。

示例1

输入

4
A B C D
8
A B C D E F G H

输出

A : 1
B : 1
C : 1
D : 1
Invalid : 4
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while (sc.hasNext()) {
            int N = sc.nextInt();
            int invalid = 0;
            // HashMap是无序的,这里用LinkedHashMap保证有序
            Map map = new LinkedHashMap<>();
            for (int i = 0; i < N; i++) {
                map.put(sc.next(), 0);
            }
            map.put("Invalid", 0);
            int M = sc.nextInt();
            for (int i = 0; i < M; i++) {
                String s = sc.next();
                if (map.containsKey(s)) {
                    map.put(s, map.get(s) + 1);
                } else {
                    map.put("Invalid", map.get("Invalid") + 1);
                }
            }
            for (String key : map.keySet()) {
                System.out.println(key + " : " + map.get(key));
            }
        }
    }
}

 

你可能感兴趣的:(算法)