์šฐ๊ทœ์ด์ธ์šฐ์œค
Eager To Learn ๐ŸŒŒ
์šฐ๊ทœ์ด์ธ์šฐ์œค
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ๐Ÿก ํ™ˆ
  • ๐Ÿš€ ๊นƒํ—ˆ๋ธŒ
  • โ›… ํƒœ๊ทธ ํด๋ผ์šฐ๋“œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (217)
    • ๐Ÿ‘จ๐Ÿป‍๐Ÿ’ป PS (170)
      • JAVA (82)
      • MYSQL (1)
      • Docker (2)
      • PYTHON (24)
      • LeetCode 150 (39)
      • Algorithm ๊ธฐ๋ฒ• (1)
      • ๋ฐ”ํ‚น๋… (21)
    • ๋ธ”๋กœ๊ทธ ์ด์‚ฌ (0)
    • Error (1)
    • CS (15)
      • DataBase (2)
      • OS (7)
      • Network (1)
      • Spring (1)
      • ์ž๋ฃŒ๊ตฌ์กฐ (3)
      • Java (1)
    • Learned (7)
      • Spring (7)
    • ๊ฐœ๋ฐœ์„œ์  (15)
      • ๊ฐ€์ƒ ๋ฉด์ ‘ ์‚ฌ๋ก€๋กœ ๋ฐฐ์šฐ๋Š” ๋Œ€๊ทœ๋ชจ ์‹œ์Šคํ…œ ์„ค๊ณ„ ๊ธฐ์ดˆ (1)
      • ์˜ค๋ธŒ์ ํŠธ - ์กฐ์˜ํ˜ธ (7)
      • ์นœ์ ˆํ•œ SQL ํŠœ๋‹ (7)
    • ํšŒ๊ณ  (2)
hELLO ยท Designed By ์ •์ƒ์šฐ.
์šฐ๊ทœ์ด์ธ์šฐ์œค

Eager To Learn ๐ŸŒŒ

๐Ÿ‘จ๐Ÿป‍๐Ÿ’ป PS/JAVA

[JAVA] ๋ฐฑ์ค€ 11651๋ฒˆ ใ€์ขŒํ‘œ ์ •๋ ฌํ•˜๊ธฐ 2ใ€‘

2022. 10. 4. 17:47


์ด๋ฒˆ ๋ฌธ์ œ๋Š”, ์ด์ „์— ํ’€์—ˆ์—ˆ๋˜ 11650 ๋ฌธ์ œ์™€ ๊ต‰์žฅํžˆ ํก์‚ฌํ•˜๋‹ค.

 

 

[JAVA] ๋ฐฑ์ค€ 11650๋ฒˆ ใ€์ขŒํ‘œ ์ •๋ ฌํ•˜๊ธฐใ€‘

์ด ๋ฌธ์ œ๋Š”, ๋‹จ์ˆœํžˆ 1์ฐจ์› ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ์ด ์•„๋‹Œ, x์ขŒํ‘œ๊ฐ€ ๊ฐ™์€ ๊ฒฝ์šฐ y์ขŒํ‘œ๋„ ๋น„๊ตํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, sort ํ•จ์ˆ˜์˜ ์ •๋ ฌ ์กฐ๊ฑด์„ ๋ณ€๊ฒฝ์‹œ์ผœ์ฃผ์–ด์•ผ ํ•œ๋‹ค. [JAVA] Comparator ์™€ Comparable์— ๋Œ€ํ•ด ์ดํ•ดํ•˜๊ธฐ ๋ฐฐ์—ด

yinq.tistory.com

 

๋‹ค๋งŒ, ์ฐจ์ด์ ์ด ์žˆ๋‹ค๋ฉด, y์ขŒํ‘œ ๊ธฐ์ค€์œผ๋กœ ๋จผ์ € ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ์„ ํ•œ ๋’ค์—, y์ขŒํ‘œ๊ฐ€ ๊ฐ™๋‹ค๋ฉด, x์ขŒํ‘œ๋ฅผ ๋น„๊ตํ•ด์„œ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๋น„๊ตํ•œ๋‹ค๋Š” ์ ์ด๋‹ค.

 

์ €๋ฒˆ ๋ฌธ์ œ์—์„œ๋Š”, Comparator ์„ implements ํ•˜๋Š” CustomComparator ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค์–ด์„œ ํ•ด๊ฒฐํ–ˆ์—ˆ๋Š”๋ฐ, ์ด๋ฒˆ์—” ๋žŒ๋‹ค ์‹ ์—ฐ์Šต๋„ ํ•  ๊ฒธ, ๋žŒ๋‹ค์‹์„ ์ด์šฉํ•ด์„œ ํ’€์–ด๋ดค๋‹ค.

 

๋žŒ๋‹ค์‹์œผ๋กœ ํ’€์–ด์„œ primitive ํƒ€์ž…์˜ int ๋ฐฐ์—ด๋กœ ํ•ด๊ฒฐ ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 

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

public class Main {
    public static void main(String[] args) throws IOException {
        //2์ฐจ์› ํ‰๋ฉด ์œ„์˜ ์  N๊ฐœ๊ฐ€ ์ฃผ์–ด์ง€๊ณ  ์ขŒํ‘œ๋ฅผ y์ขŒํ‘œ๊ฐ€ ์ฆ๊ฐ€ํ•˜๋Š” ์ˆœ์œผ๋กœ, y์ขŒํ‘œ๊ฐ€ ๊ฐ™๋‹ค๋ฉด x์ขŒํ‘œ๊ฐ€ ์ฆ๊ฐ€ํ•˜๋Š” ์ˆœ์œผ๋กœ
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        int N = Integer.valueOf(br.readLine());
        int[][] coordinate = new int[N][2];

        for (int i = 0; i < N; i++) {
            String[] input = br.readLine().split(" ");
            coordinate[i][0] = Integer.valueOf(input[0]);
            coordinate[i][1] = Integer.valueOf(input[1]);
        }
  //      System.out.println(Arrays.deepToString(coordinate));
        Arrays.sort(coordinate, (coord1, coord2) -> {
            if (coord1[1] == coord2[1]) {
                return coord1[0] - coord2[0];
            } else {
                return coord1[1] - coord2[1];
            }
        });
  //      System.out.println(Arrays.deepToString(coordinate));

        for (int i = 0; i < N; i++) {
           sb.append(coordinate[i][0] + " " + coordinate[i][1] + "\n");
        }
        System.out.println(sb);


    }
}

 

 

Comparator ๊ตฌํ˜„ํ•ด์„œ ํ•ด๊ฒฐ

 

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.Comparator;

public class Main {
    public static void main(String[] args) throws IOException {
        //2์ฐจ์› ํ‰๋ฉด ์œ„์˜ ์  N๊ฐœ๊ฐ€ ์ฃผ์–ด์ง€๊ณ  ์ขŒํ‘œ๋ฅผ y์ขŒํ‘œ๊ฐ€ ์ฆ๊ฐ€ํ•˜๋Š” ์ˆœ์œผ๋กœ, y์ขŒํ‘œ๊ฐ€ ๊ฐ™๋‹ค๋ฉด x์ขŒํ‘œ๊ฐ€ ์ฆ๊ฐ€ํ•˜๋Š” ์ˆœ์œผ๋กœ
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        int N = Integer.valueOf(br.readLine());
        Integer[][] coordinate = new Integer[N][2];

        for (int i = 0; i < N; i++) {
            String[] input = br.readLine().split(" ");
            coordinate[i][0] = Integer.valueOf(input[0]);
            coordinate[i][1] = Integer.valueOf(input[1]);
        }
        //      System.out.println(Arrays.deepToString(coordinate));
        Arrays.sort(coordinate,new CustomComparator());
        //      System.out.println(Arrays.deepToString(coordinate));

        for (int i = 0; i < N; i++) {
            sb.append(coordinate[i][0] + " " + coordinate[i][1] + "\n");
        }
        System.out.println(sb);


    }

    static class CustomComparator implements Comparator<Integer[]> {
        @Override
        public int compare(Integer[] a1, Integer[] a2) {
            if (a1[1].equals(a2[1])) {
                return a1[0] - a2[0];
            } else {
                return a1[1] - a2[1];
            }
        }
    }

}
    '๐Ÿ‘จ๐Ÿป‍๐Ÿ’ป PS/JAVA' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [JAVA] ๋ฐฑ์ค€ 10825๋ฒˆ ใ€๊ตญ์˜์ˆ˜ใ€‘
    • [JAVA] ๋ฐฑ์ค€ 10814๋ฒˆ ใ€๋‚˜์ด์ˆœ ์ •๋ ฌใ€‘
    • [JAVA] ๋ฐฑ์ค€ 11650๋ฒˆ ใ€์ขŒํ‘œ ์ •๋ ฌํ•˜๊ธฐใ€‘
    • [JAVA] ๋ฐฑ์ค€ 2751๋ฒˆ ใ€์ˆ˜ ์ •๋ ฌํ•˜๊ธฐ 2ใ€‘
    ์šฐ๊ทœ์ด์ธ์šฐ์œค
    ์šฐ๊ทœ์ด์ธ์šฐ์œค
    ๊ฐœ๋ฐœ์ž ๊ฟˆ๋‚˜๋ฌด

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”