문제https://www.acmicpc.net/problem/1431풀이시리얼번호 A가 시리얼번호 B의 앞에 오는 경우의 조건을 확인하면 아래와 같다.1. A와 B의 길이가 다르면, 짧은 것이 먼저 온다.2. 만약 서로 길이가 같다면, A의 모든 자리수의 합과 B의 모든 자리수의 합을 비교해서 작은 합을 가지는 것이 먼저 온다.(숫자인 것만 더한다)3. 만약 1, 2번 둘 조건으로도 비교할 수 없다면, 사전순으로 비교한다. 숫자가 알파벳보다 사전순으로 작다. 위 조건들과 같이 오름차순과 내림차순이 섞여 있고, 조건들이 여러 개 있어서 Comparator를 사용하여 정렬을 했다.Codeimport java.util.Comparator;import java.util.Scanner;import java.uti..
Algorithm PS
https://www.acmicpc.net/problem/10825 풀이문제의 조건을 보면 아래와 같다.1. 국어 점수가 감소하는 순서로2. 국어 점수가 같으면 영어 점수가 증가하는 순서로3. 국어 점수와 영어 점수가 같으면 수학 점수가 감소하는 순서로4. 모든 점수가 같으면 이름이 사전 순으로 증가하는 순서로 (단, 아스키 코드에서 대문자는 소문자보다 작으므로 사전순으로 앞에 온다.) [이름(문자), 국어(정수), 영어(정수), 수학(정수)]를 입력받기 위해 2차원 배열을 사용하였다. 조건을 보면 각 단계마다 중복되는 조건들이 있고, 오름차순과 내림차순을 섞어서 사용했기 때문에 Comparator를 이용했다. Comparator객체 간 값의 비교를 위해 필요한 메서드를 정리한 인터페이스 Compara..