백준 10807 개수 세기

coha96 ㅣ 2023. 3. 22. 16:08

문제

https://www.acmicpc.net/problem/10807

 

10807번: 개수 세기

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

www.acmicpc.net

총 N개의 정수가 주어졌을 때, 정수 v가 몇 개인지 구하는 프로그램을 작성하시오.


입력

첫째 줄에 정수의 개수 N(1 ≤ N ≤ 100)이 주어진다.

둘째 줄에는 정수가 공백으로 구분되어져있다.

셋째 줄에는 찾으려고 하는 정수 v가 주어진다.

입력으로 주어지는 정수와 v는 -100보다 크거나 같으며, 100보다 작거나 같다.


출력

첫째 줄에 입력으로 주어진 N개의 정수 중에 v가 몇 개인지 출력한다.



작성 코드

 

방법 1.

import java.util.Scanner;

public class testCount {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int num = sc.nextInt();
        int[] numbers = new int[num];

        for (int i = 0; i < num; i++) {
            numbers[i] = sc.nextInt();
        }
        int choice = sc.nextInt();
        int cnt = 0;
        for (int i = 0; i < numbers.length; i++) {
            cnt = cnt + ((choice == numbers[i]) ? 1 : 0);
        }
        System.out.println(cnt);
    }
}

 

방법2.

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

public class testCount {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int num = Integer.parseInt(br.readLine());
        int[] arr = new int[num];
        StringTokenizer st = new StringTokenizer(br.readLine());
        int cnt = 0;

        for (int i = 0; i < arr.length; i++) {
            arr[i] = Integer.parseInt(st.nextToken());
        }
        int target = Integer.parseInt(br.readLine());

        for (int number : arr) {
            if(number == target){
                cnt++;
            }
        }
        System.out.print(cnt);
        br.close();
    }
}

'코딩테스트' 카테고리의 다른 글

정수를 나선형으로 배치하기 - Java[Lv.0]  (0) 2023.08.02
미완/백준 2830 행성 X3  (0) 2023.03.22
백준 9012 괄호  (0) 2023.03.22
숫자 문자열과 영단어  (0) 2023.03.22
코테 입문 - (수학)짝수는 싫어요  (0) 2023.03.21