본문 바로가기

알고리즘/구현

자바 | 백준 | 10807 | 개수 세기

solution

1. HashMap 이용 ∵ v가 몇 개인지 출력

// 10807, 개수 세기
package BOJ;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.StringTokenizer;

public class BOJ_10807 {

	public static void main(String[] args) throws IOException {
		// TODO Auto-generated method stub
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		int N = Integer.parseInt(br.readLine());

		StringTokenizer st = new StringTokenizer(br.readLine());

		HashMap<Integer, Integer> map = new HashMap<>();

		for (int i = 0; i < N; i++) {
			int input = Integer.parseInt(st.nextToken());
			if (map.get(input) == null) {
				map.put(input, 1);
			} else {
				map.replace(input, map.get(input) + 1);
			}
		}

		int V = Integer.parseInt(br.readLine());
		if (map.get(V) == null)
			System.out.println(0);
		else
			System.out.println(map.get(V));
	}
}

 

문제 출처 www.acmicpc.net/problem/10807

 

10807번: 개수 세기

첫째 줄에 정수의 개수 N(1 ≤ N ≤ 100)이 주어진다. 둘째 줄에는 정수가 공백으로 구분되어져있다. 셋째 줄에는 찾으려고 하는 정수 v가 주어진다. 입력으로 주어지는 정수와 v는 -100보다 크거

www.acmicpc.net