알고리즘/백준

[파이썬, 자바] BOJ_2752(세수정렬)

딱따구르리 2021. 2. 8. 16:17
728x90
반응형

문제

 

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

 

2752번: 세수정렬

숫자 세 개가 주어진다. 이 숫자는 1보다 크거나 같고, 1,000,000보다 작거나 같다. 이 숫자는 모두 다르다.

www.acmicpc.net


 

해설

 

sorted() 함수를 이용해서 한 줄로 풀 수도 있지만

하나 하나 조건을 따져서 풀어보았다.


코드

 

-파이썬

#백준 2752(세수정렬)

a, b, c = map(int, input().split())

#abc  bac  cab
#acb  bca  cba

if a > b and a > c:
    if b > c:
        print(c, b, a)
    else:
        print(b, c, a)
elif b > a and b > c:
    if a > c:
        print(c, a, b)
    else:
        print(a, c, b)
elif c > a and c > b:
    if a > b:
        print(b, a, c)
    else:
        print(a, b, c)

 

-자바

//백준 2752(세수정렬)
import java.util.*;
import java.io.*;

public class Boj_2752 {

	public static void main(String[] args) throws IOException{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer(br.readLine());
		
		int a = Integer.parseInt(st.nextToken());  
		int b = Integer.parseInt(st.nextToken());  
		int c = Integer.parseInt(st.nextToken());  

		if(a > b && a > c) {
			if(b > c) {
				System.out.println(c + " " + b + " " + a);
			}
			else {
				System.out.println(b + " " + c + " " + a);
			}
		}
		else if(b > a && b > c) {
			if(a > c) {
				System.out.println(c + " " + a + " " + b);
			}
			else {
				System.out.println(a + " " + c + " " + b);
			}
		}
		else if(c > a && c > b) {
			if(a > b) {
				System.out.println(b + " " + a + " " + c);
			}
			else {
				System.out.println(a + " " + b + " " + c);
			}
		}
	}

}
728x90
반응형