1 λΆ„ μ†Œμš”

πŸ“ [S1_2527] μ§μ‚¬κ°ν˜•

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

public class Main {
    static StringTokenizer st;
    public static void main (String[] args) throws Exception {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        for (int t = 0; t < 4; t++) {

            st = new StringTokenizer(br.readLine());
            int x1 = Integer.parseInt(st.nextToken());
            int y1 = Integer.parseInt(st.nextToken());
            int p1 = Integer.parseInt(st.nextToken());
            int q1 = Integer.parseInt(st.nextToken());
            int x2 = Integer.parseInt(st.nextToken());
            int y2 = Integer.parseInt(st.nextToken());
            int p2 = Integer.parseInt(st.nextToken());
            int q2 = Integer.parseInt(st.nextToken());


            int minX = Math.min(x1, x2); // μž…λ ₯받은 xμ’Œν‘œμ˜ μ΅œμ†Ÿκ°’
            int maxX = Math.max(p1, p2); // μž…λ ₯받은 xμ’Œν‘œμ˜ μ΅œλŒ“κ°’
            int minY = Math.min(y1, y2); // μž…λ ₯받은 yμ’Œν‘œμ˜ μ΅œμ†Ÿκ°’
            int maxY = Math.max(q1, q2); // μž…λ ₯받은 yμ’Œν‘œμ˜ μ΅œλŒ“κ°’

            int width1 = p1 - x1; // 첫번째 μ§μ‚¬κ°ν˜•μ˜ κ°€λ‘œ 길이
            int height1 = q1 - y1; // 첫번째 μ§μ‚¬κ°ν˜•μ˜ μ„Έλ‘œ 길이
            int width2 = p2 - x2; // λ‘λ²ˆμ§Έ μ§μ‚¬κ°ν˜•μ˜ κ°€λ‘œ 길이
            int height2 = q2 - y2; // λ‘λ²ˆμ§Έ μ§μ‚¬κ°ν˜•μ˜ μ„Έλ‘œ 길이


            // μ„ 
            if (((width1+width2 == maxX-minX) && (height1+height2 > maxY-minY)) || ((height1+height2 == maxY-minY) && (width1+width2 > maxX-minX)))
                sb.append("b");
            // 점
            else if ((width1+width2 == maxX-minX) && (height1+height2 == maxY-minY))
                sb.append("c");
            // μ—†λŠ” 경우
            else if ((width1+width2 < maxX-minX) || (height1+height2 < maxY-minY))
                sb.append("d");
            // μ§μ‚¬κ°ν˜•
            else
                sb.append("a");

            sb.append("\n");
        }
        System.out.println(sb);
    }
}

πŸ€” λ‚˜μ˜ 생각

정말.. 눈이 빠질 λ»” ν–ˆλ‹€..γ… 
μ›λž˜ μ²˜μŒμ—λŠ” μ’Œν‘œλ“€μ„ κΈ°μ€€μœΌλ‘œ 더 ν¬κ±°λ‚˜ μž‘κ±°λ‚˜ λΉ„κ΅ν•΄μ„œ κ΅¬ν˜„ν•˜μ˜€λŠ”λ°
100%κΉŒμ§€ κ°€μ„œ ν‹€λ Έλ‹€κ³  ν•˜λŠ” 것을 보면 ν•œ 가지 경우의 λ°˜λ‘€κ°€ μžˆμ„ 것 κ°™μ•˜λŠ”λ° μŠ€ν„°λ””μ›ν•œν…Œ λ“€μ–΄λ³΄λ‹ˆ κΈ΄ μ‹­μžκ°€ λͺ¨μ–‘이 λ°˜λ‘€κ°€ λœλ‹€λŠ” 것이닀.
ν™•μΈν•΄λ³΄λ‹ˆ κ·Έλž¬λ‹€.. κ·Έλž˜μ„œ μ’Œν‘œκ°€ μ•„λ‹Œ μ‚¬κ°ν˜•μ˜ 길이λ₯Ό λΉ„κ΅ν•΄μ„œ μ’Œν‘œλ‘œ ν•œ κ΅¬μ‘°λŠ” κ°™μ§€λ§Œ κ·Έ 비ꡐ μ›μ†Œλ₯Ό 길이둜 ν•˜μ—¬ κ΅¬ν˜„ν•˜μ˜€λ‹€.
정말 ν’€κΈ° 싫은 μœ ν˜• 쀑 ν•˜λ‚˜λ‹€ .. νž˜λ“€μ—ˆλ‹€.