Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags more
Archives
Today
Total
관리 메뉴

luke

[백준] - 짝수를 찾아라 (3058) (자바/Java) 본문

알고리즘문제/백준 문제(Java)

[백준] - 짝수를 찾아라 (3058) (자바/Java)

luke-king 2024. 4. 5. 18:50

 

 

 

 

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

 

3058번: 짝수를 찾아라

입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터는 한 줄로 구성되어 있고, 7개의 자연수가 공백으로 구분되

www.acmicpc.net

 

 

 

 

 

 

 

 

 

문제.


 

 

 

 

 

 

 

 

풀이.


 

public class Main {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] arr = new int[7];
        int min = Integer.MAX_VALUE;
        int tot = 0;

        for (int i = 0; i < n; i++) {


            for (int j = 0; j < 7; j++) {
                arr[j] = sc.nextInt();

                if (arr[j] % 2 == 0) {
                    tot += arr[j];
                    if (arr[j] < min) {
                        min = arr[j];
                    }
                }
            }
            System.out.println(tot +" " + min);
            tot = 0;
            min = Integer.MAX_VALUE;
        }
        sc.close();


    }
}

 

이번 문제도 크게 어렵지 않았던 문제이다.

입력한 값의 짝수들을 찾아 짝수들의 합과 짝수들의 최소값을 찾는 문제다.

바로 설명으로 넘어가 보겠다.

 

1. 수를 입력하는 부분은 다들 알거라 생각하고 생략 하겠다.

 

2. 배열 0번부터 7번 정수를 입력해 짝수 찾는 조건식으로 걸러준다.

 

3. 짝수일 때마다 tot 변수에 더해줘 총합을 구한다.

 

4. 짝수의 최소값을 구해야 하니 2중 if문을 통해 min 변수보다 작은 짝수를 찾아 초기화해준다.

 

5. 한 사이클 돌 때마다 tot 값과 min 값을 초기화시켜준다.

 

* Integer.MAX_VALUE 를 써준 이유는 최소 값을 찾기 위해 입력될 수 있는 가장 큰 값으로 설정해야 하기해 설정해준 것이다.