반응형 SMALL IT/알고리즘24 [BOJ] 나이순 정렬 10814.java 준비 겸, JAVA Stream에 익숙해지기 위해. 문제 https://www.acmicpc.net/problem/10814 10814번: 나이순 정렬 온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을 www.acmicpc.net 나이 - 이름으로 입력 받았을 때, 나이 순으로 정렬하고, 같은 경우 입력 순서대로 정렬한다. 해설 및 코드 public class 나이순정렬 { public static class User{ int age; String name; User(int a, String n){ this.age = a; this.name = n; } public int.. 2022. 5. 25. [프로그래머스] 종이접기 - Cos Pro 1급 문제 https://programmers.co.kr/learn/courses/11132/lessons/71152 COS Pro 1급 Java 모의고사 - 종이접기 [[1, 4, 16, 1], [20, 5, 15, 8], [6, 13, 36, 14], [20, 7, 19, 15]] 55 programmers.co.kr 1. 4 x 4 크기인 정사각형 종이가 1 x 1 크기인 격자 칸으로 나누어져 있음 2. 이 종이를 가로축 혹은 세로축에 평행한 격자 선을 따라 한 번 접었을 때, 만나는 격자 칸에 적힌 숫자의 합이 최대일 때 3. 종이를 접을 때는 만나는 격자 칸이 정확히 일치 예를 들어 다음과 같이 4 x 4 크기인 종이가 있을 때, - 종이는 점선 중 하나를 따라서 접을 수 있음 - 붉은색 점선을 따라.. 2022. 4. 20. [BOJ] 순회강연 2109.java 문제 백준의 과제 13904 문제와 같은 문제이다. 점수와 날짜만 서로 바꿔서 입력된다. 해당 문제는 하루에 한 개의 강연만 할 수 있을 때, 가장 최대로 얻을 수 있는 p(강연료)를 구하는 문제이다. 해설 및 코드 package BAEKJOON; import java.util.Arrays; import java.util.Comparator; import java.util.Scanner; import java.util.TreeSet; public class 순회강연_2109 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int[][] arr = new int[N][2];.. 2021. 6. 21. [BOJ] 가장 긴 증가하는 부분수열2 12015.java 문제 LIS라는 대표적인 알고리즘 문제 중 하나이다. 가장 긴 증가하는 부분 수열의 길이를 리턴한다. 가장 긴 증가하는 부분수열 11053 문제는 O(n^2)으로 문제를 풀 수 있지만, 해당 문제는 O(nlogn)의 시간으로 코드를 짜야한다. https://jason9319.tistory.com/113 이 블로그에 설명이 잘 나와있지만, 공부하는 마음으로 작성한다. 해설 및 코드 - Lower Bound는 O(logn)의 시간을 소모한다. 이러한 이분탐색의 일종인 Lower Bound를 이용하여 O(nlogn)의 시간으로 해결한다. package BAEKJOON; import java.util.ArrayList; import java.util.Scanner; public class 가장긴증가하는부분수열2.. 2021. 6. 21. [BOJ] 합이0 3151.java 문제 - N개의 숫자(-10000~10000)가 주어질 때, 세 개의 숫자 합이 0이되는 경우의 수 해설 및 코드 package BAEKJOON; import java.util.ArrayList; import java.util.Arrays; import java.util.Scanner; public class 합이0_3151 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); // 2 -5 2 3 -4 7 -4 0 1 -6 int[] arr = new int[N]; // -7 -6 -5 -4 ArrayList minus = new ArrayList(); // 1 2 2 3 7.. 2021. 6. 1. [BOJ] 시리얼번호 1431.java 문제 - 문제에 나온 순서대로 정렬해서 출력하면 된다. - 정렬 및 구현 문제 해설 및 코드 package BAEKJOON; import java.util.*; public class 시리얼번호_1431 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); PriorityQueue pq = new PriorityQueue(new Comparator() { @Override public int compare(String o1, String o2) { // TODO Auto-generated method stub if (o1.length() == o2.length()) { int .. 2021. 5. 18. 이전 1 2 3 4 다음 반응형 LIST