Algorithm
-
[백준] 8979 올림픽 - 자바(Java)Algorithm 2022. 8. 3. 02:35
https://www.acmicpc.net/problem/8979 8979번: 올림픽 입력의 첫 줄은 국가의 수 N(1 ≤ N ≤ 1,000)과 등수를 알고 싶은 국가 K(1 ≤ K ≤ N)가 빈칸을 사이에 두고 주어진다. 각 국가는 1부터 N 사이의 정수로 표현된다. 이후 N개의 각 줄에는 차례대로 각 www.acmicpc.net 각 국가별 이름, 금은동 메달 수가 주어지면 요구하는 국가의 순위를 출력하는 문제 난이도도 실버5이고 간단한 문제처럼 보였지만 막상 풀어보면 간단하지 않았다. 특히 '금은동 메달 수 가 같으면 두 나라의 등수는 같다' 조건을 처리하는 부분이 까다로웠다. 풀이 먼저 CompareTo 메소드를 오버라이드 해 정렬규칙을 정해야 한다. static class Nation implem..
-
프로그래머스 스킬체크 레벨2Algorithm 2022. 5. 8. 01:16
저번에 작성했던 레벨1 후기에 이어, 레벨2를 작성한다. 사실 통과는 했지만 조금 찜찜한게, 저번에 도전해봤을 땐 너무 어려운 문제들이 나와서 아직 때가 아니군 하면서 조용히 뒤로가기 버튼을 눌렀는데, 오늘 다시 도전했을 땐 아는 문제들이 나왔다. 항상 느끼는건데 프로그래머스는 같은 레벨이라도 문제의 난이도 차이가 좀 많이 나는 것 같다.. 제한시간은 한시간이었는데, 풀만하다 생각했던 문제들이 나왔음에도 불구하고 거의 꽉채워서 제출했다.😅 1. 가장 큰 수 가장 큰 수 문제가 나왔다. 정수를 문자열로 변환해서 사전 내림차순으로 정렬하면 되는 문제. 단, 그냥 정렬만 하면 입출력#2에서 3, 30과 같은 수가 들어왔을 때 원하는 값은 330이 나와야 하는데 303으로 정렬해버린다. 때문에 sort메소드를 ..
-
프로그래머스 스킬체크 레벨1 풀어보기Algorithm 2022. 4. 10. 23:36
알고리즘 문제를 틈틈히 풀다가, 프로그래머스 사이트에 이런게 있어서 도전해봤다. 물론 나는 입문 1주일차 조렙중의 조렙이기 때문에 당연히 레벨1로ㅎㅎ.. 두 문제를 40분 안에 푸는 건데 시간 제한은 넉넉했다. 1. 배열에서 연속된 값 제거하기 정수 배열이 주어지고, 연속된 숫자가 있으면 제거하라는 문제였다. 처음엔 그냥 중복제거하란거네~~ set쓰면 되겠네 하고 풀었다가 빨간줄의 쓴맛을 맛보았다... 다시보니까 연속된 숫자만 제거하란 뜻이었고 연속되지만 않으면 중복이 되든 상관하지 않는단 뜻이었다. import java.util.ArrayList; public class Solution { public int[] solution(int []arr) { ArrayList list = new ArrayLi..