총 N개의 정수가 주어졌을 때, 정수 v가 몇 개인지 구하는 프로그램을 작성
입력
- 첫째 줄에 정수의 개수 N(1 ≤ N ≤ 100)이 주어진다.
- 둘째 줄에는 정수가 공백으로 구분되어져있다.
- 셋째 줄에는 찾으려고 하는 정수 v가 주어진다.
-100 <= 입력으로 주어지는 정수, v <= 100
출력
첫째 줄에 입력으로 주어진 N개의 정수 중에 v가 몇 개인지 출력한다.
// 풀이 방법
// BufferedReader로 3줄 받기
// for문을 돌면서 v와 같은 게 있는지 체크
// 같다면 count변수 cnt + 1 변경
// cnt 출력
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
String bundle = br.readLine();
int v = Integer.parseInt(br.readLine());
int cnt = 0; // 중복이면 count + 1
ArrayList<Integer> arr = new ArrayList<>(); // 비교할 기존 배열에 값 넣기
StringTokenizer st = new StringTokenizer(bundle, " ");
for (int i = 0; i < n; i++) {
arr.add(Integer.valueOf(st.nextToken()));
}
// 반복문 돌면서 v와 같은지 비교
for (int i = 0; i < arr.size(); i++) {
if (arr.get(i) == v) {
cnt ++;
}
}
System.out.println(cnt);
}
}
코딩테스트 전 힌트 문제로 선정받은 문제인데, 주제가 해시테이블이다.
해시테이블과 연관되어 생각해보기!