[BOJ] 백준 1181번 : 단어 정렬 - Java

2025. 1. 1. 23:51·Algorithm Solving/Java

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

import java.io.*;
import java.util.*;

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

        int N = Integer.parseInt(br.readLine());

        // 중복을 제거하고 저장하기 위해 Set 선언
        Set<String> strSet = new HashSet<>();
        for (int i = 0; i < N; i++) {
            strSet.add(br.readLine());
        }

        // 정렬을 하기 위해 Set을 List로 변환
        List<String> strList = new ArrayList<>(strSet);
        // List.sort()에 정렬 기준 적용
        strList.sort((o1, o2) -> {
            if (o1.length() == o2.length()) {
                return o1.compareTo(o2); // 길이가 같다면 사전순 정렬
            }
            return Integer.compare(o1.length(), o2.length()); // 길이순 정렬
        });

        // 출력
        for (String str : strList) {
            System.out.println(str);
        }
    }
}

강의에서 들은 자료구조를 활용한 문제 풀이를 해봤다~

Set 자료구조가 중복을 허용하지 않고, List가 sort메서드를 제공함을 알고 푸니 금방 풀 수 있었다.

저작자표시 비영리 변경금지 (새창열림)

'Algorithm Solving > Java' 카테고리의 다른 글

[programmers] Java Lv.2 - 카펫  (0) 2025.01.03
[BOJ] 백준 9095번 : 1, 2, 3 더하기 - Java  (0) 2025.01.02
[BOJ] 백준 14226번 : 이모티콘 - Java  (1) 2024.12.31
[BOJ] 백준 2468번 : 안전 영역 - Java  (1) 2024.12.30
[BOJ] 백준 7562번 : 나이트의 이동 - Java  (0) 2024.12.30
'Algorithm Solving/Java' 카테고리의 다른 글
  • [programmers] Java Lv.2 - 카펫
  • [BOJ] 백준 9095번 : 1, 2, 3 더하기 - Java
  • [BOJ] 백준 14226번 : 이모티콘 - Java
  • [BOJ] 백준 2468번 : 안전 영역 - Java
기만나🐸
기만나🐸
공부한 내용을 기록합시다 🔥🔥🔥
  • 기만나🐸
    기만나의 공부 기록 🤓
    기만나🐸
  • 전체
    오늘
    어제
    • ALL (147)
      • TIL (Today I Learned) (56)
      • Dev Projects (15)
      • Algorithm Solving (67)
        • Java (52)
        • SQL (15)
      • Certifications (8)
        • 정보처리기사 실기 (8)
  • 인기 글

  • 태그

    sql
    백트래킹
    greedy
    jQuery
    완전탐색
    Firebase
    jpa
    java
    dp
    mysql
    Google Fonts
    jwt
    programmers
    DFS
    백준
    자료구조
    CSS
    websocket
    join
    javascript
    BOJ
    BFS
    프로그래머스
    다이나믹프로그래밍
    HTML
    GROUP BY
    시뮬레이션
    Subquery
    그리디
    bootstrap
  • 최근 글

  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.3
기만나🐸
[BOJ] 백준 1181번 : 단어 정렬 - Java
상단으로

티스토리툴바