[BOJ] 10807 JAVA

Organ·2023년 9월 4일
0

[문제 풀이]

목록 보기
19/123

개수 세기

문제

내 풀이

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
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;					// 정수의 개수
		String str;				// 입력 받을 수를 문자열로 저장
		int v;					// 찾으려 하는 정수 v
		int count = 0;			// v개 몇 개인지 셀 변수
		n = Integer.parseInt(br.readLine());



		int[] num = new int[n];

			str = br.readLine();
			StringTokenizer st = new StringTokenizer(str);
		for(int i = 0; i < n; i++)
		{
			num[i] = Integer.parseInt(st.nextToken());
		}
		v = Integer.parseInt(br.readLine());

		for(int i = 0; i < n; i++)
		{
			if(num[i] == v)
				count++;
		}
		System.out.println(count);

	}
}

다른 풀이

import java.io.*;
import java.util.StringTokenizer;

public class Main {

    public static void main(String[] args) throws IOException {

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

        int N = Integer.parseInt(br.readLine());
        int count = 0;
        int[] arr = new int[N];

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

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

        int b = Integer.parseInt(br.readLine());

        for(int j = 0; j < arr.length; j++){
            if(b == arr[j]) {
                count++;
            }
        }
        System.out.println(count);

        br.close();
        bw.flush();
        bw.close();
    }
}

다른 풀이

import java.io.*;
import java.util.StringTokenizer;

public class Main {

    public static void main(String[] args) throws IOException {

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

        int N = Integer.parseInt(br.readLine());
        int count = 0;
        int[] arr = new int[N];

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

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

        int b = Integer.parseInt(br.readLine());

        for(int j = 0; j < arr.length; j++){
            if(b == arr[j]) {
                count++;
            }
        }
        System.out.println(count);

        br.close();
        bw.flush();
        bw.close();
    }
}

정리


아직도 flush와 close개념을 잘 모르겠다 안 써줘도 문제는 풀리니까 자꾸 안쓰게 된다. 쓴 것 보다 안 쓴 게 더 빠르다. 아마도 나랑 비슷하게 풀었는데 마지막에 추가해줘서 그런 것 같다.

출처

https://codingnight.tistory.com/39

0개의 댓글