Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
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
관리 메뉴

개발자되기 프로젝트

[백준] Greedy: 5와 6 의 차이 본문

코테준비

[백준] Greedy: 5와 6 의 차이

Seung__ 2022. 6. 1. 12:05

문제

상근이는 2863번에서 표를 너무 열심히 돌린 나머지 5와 6을 헷갈리기 시작했다.

상근이가 숫자 5를 볼 때, 5로 볼 때도 있지만, 6으로 잘못 볼 수도 있고, 6을 볼 때는, 6으로 볼 때도 있지만, 5로 잘못 볼 수도 있다.

두 수 A와 B가 주어졌을 때, 상근이는 이 두 수를 더하려고 한다. 이때, 상근이가 구할 수 있는 두 수의 가능한 합 중, 최솟값과 최댓값을 구해 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 두 정수 A와 B가 주어진다. (1 <= A,B <= 1,000,000)

출력

첫째 줄에 상근이가 구할 수 있는 두 수의 합 중 최솟값과 최댓값을 출력한다

 

문제 접근

상근이가 5와 6이 헷갈린다.

최대값을 5를 6으로, 최솟값은 6을 5로 만들면 된다.

int를 가지고 다루기는 귀찮기 때문에 String으로 바로 바꿔치기 하면 편하다.

 

풀이 코드

package baekjun;

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

public class _2864 {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

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

        String A = st.nextToken();
        String B = st.nextToken();

        A = A.replace("5", "6");
        B = B.replace("5", "6");

        int max = Integer.parseInt(A) + Integer.parseInt(B);

        A = A.replace("6", "5");
        B = B.replace("6", "5");

        int min =  Integer.parseInt(A) + Integer.parseInt(B);

        System.out.println(min + " " + max);
    }
}

 

'코테준비' 카테고리의 다른 글

[백준] Greedy: 문서 검색  (0) 2022.06.01
[백준] Greedy: 행렬  (0) 2022.06.01
[백준] Greedy: 수 묶기  (0) 2022.06.01
[백준] Greedy: 기타줄  (0) 2022.05.30
[백준]Greedy: 보석도둑  (0) 2022.05.29
Comments