Notice
Recent Posts
Recent Comments
Link
«   2025/07   »
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
Archives
Today
Total
관리 메뉴

전공공부

[BOJ_21312] 홀짝 칵테일 본문

Study/Problem Solving

[BOJ_21312] 홀짝 칵테일

monitor 2023. 11. 27. 07:00

설명


홀수가 최대한 나올 수 있도록 유도하는게 목표이고 3개의 선택지가 있어서 굳이 조합을 사용하지 않았다.

 

코드


package Math;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;

public class BOJ_21312 {
    public static void main(String[] args) throws Exception{
        Scanner sc = new Scanner(System.in);

        int arr[] = new int[3];

        for (int i = 0; i < 3; i++){
            arr[i] = sc.nextInt();
        }
        List<Integer> list = new ArrayList<>();
        int ans = 0;
        for (int i = 0; i < 3; i++){
            int num = arr[i];
            if(num > ans && ans % 2 == 0){
                ans = num;
            }
            loop: for (int j = 0; j < 3; j++){
                if(j != i){
                    if(num * arr[j] > ans && (ans % 2 == 0)){
                        ans = num * arr[j];
                        num *= arr[j];
                    }
                    if((num * arr[j]) % 2 != 0 && num * arr[j] > ans){
                        ans = num * arr[j];
                        num *= arr[j];
                    }
                    for (int k = 0; k < 3; k++){
                        if(k != j && k != i){
                            if(num * arr[k] > ans && (ans % 2 == 0)){
                                ans = num * arr[k];
                                num *= arr[k];
                            }
                            if((num * arr[k]) % 2 != 0 && num * arr[k] > ans){
                                ans = num * arr[k];
                                num *= arr[k];
                            }
                            list.add(ans);
                            ans = 0;

                            break loop;
                        }
                    }
                }
            }
        }
        Collections.sort(list);
        System.out.println(list.get(0));


    }
}
 

21312번: 홀짝 칵테일

정진이는 특별한 음료를 가지고 있다. 음료들은 정수로 표현되는 고유 번호를 가지고 있다. 정진이는 이 음료들을 섞어 만든 칵테일을 만든다. 이 칵테일은 홀짝 칵테일이라 부르는데, 홀짝 칵

www.acmicpc.net

 

'Study > Problem Solving' 카테고리의 다른 글

[BOJ_2168] 타일 위의 대각선  (1) 2023.11.29
[BOJ_2553] 마지막 팩토리얼 수  (0) 2023.11.28
[BOJ_22493] 수  (1) 2023.11.26
[BOJ_21275] 폰 호석만  (0) 2023.11.26
[BOJ_10171] 고양이  (1) 2023.11.24