https://www.acmicpc.net/problem/10807
오랜만에 쉬운 문제를 가져왔다!
-100부터 100까지의 수를 입력받고, 특정 수가 주어지면 해당 수가 몇 번 나왔는지 출력하는 문제이다.
나는 배열을 만들어서 수를 입력받을 때마다 해당 인덱스의 수를 하나씩 늘려주는 방식을 사용했다.
이때 인덱스가 음수가 될 수는 없으니까 200크기의 배열을 만들고, 입력받은 수에 100을 더한 인덱스의 값을 늘려주었다.
그럼 -100이 입력되었을 때에는 0번째 배열의 수가 하나씩 올라가고, 100이 입력되었을 때에는 200번째 배열의 인덱스가 하나 늘어난다.
import java.io.*;
import java.util.*;
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());
int[] arr = new int[201];
StringTokenizer st = new StringTokenizer(br.readLine());
for(int i = 0;i<n;i++){
int a = Integer.parseInt(st.nextToken());
arr[a+100]++;
}
int k = Integer.parseInt(br.readLine());
System.out.println(arr[k+100]);
}
}
음수도 입력받는 줄 모르고 풀었다가 에러가 났다..
'알고리즘 > 백준 문제풀이' 카테고리의 다른 글
백준 [자바 java] 12904 : A와 B (0) | 2023.08.04 |
---|---|
백준 [자바 java] 5338 : 마이크로소프트 로고 (0) | 2023.08.02 |
백준 [java 자바] 9084 : 동전 (0) | 2023.07.25 |
백준 [자바 java] 2252 : 줄 세우기 (0) | 2023.07.24 |
백준 [자바 : java] 1038 : 감소하는 수 (0) | 2023.07.24 |