알고리즘 3

백준2075_N번째 큰 수 (java)

https://www.acmicpc.net/problem/2075 2075번: N번째 큰 수 첫째 줄에 N(1 ≤ N ≤ 1,500)이 주어진다. 다음 N개의 줄에는 각 줄마다 N개의 수가 주어진다. 표에 적힌 수는 -10억보다 크거나 같고, 10억보다 작거나 같은 정수이다. www.acmicpc.net 문제 풀이 방식 나의 생각 ArrayList에 입력받은 숫자를 모두 넣는다. reverseSort한다. n번째 큰수를 찾는 것이므로 내림차순 정렬된 list에서 n-1번째 숫자를 찾는다. 해당 방법은 시간이 좀 더 오래걸린다. 찾아본 풀이 우선순위큐를 최대힙으로 변경해서 큐에 입력된 숫자를 넣는다. 반복문을 통해 n-1번째까지 큐에서 poll해준다. 반복문이 끝나고 마지막에 한번 poll해주면 n번째 큰..

알고리즘 2021.11.09

백준1620_나는야 포켓몬 마스터 이다솜 (java)

문제링크 1620번: 나는야 포켓몬 마스터 이다솜 첫째 줄에는 도감에 수록되어 있는 포켓몬의 개수 N이랑 내가 맞춰야 하는 문제의 개수 M이 주어져. N과 M은 1보다 크거나 같고, 100,000보다 작거나 같은 자연수인데, 자연수가 뭔지는 알지? 모르면 www.acmicpc.net 처음에 문제보고 길어서 속으로 뭐지...했는데 정작 문제자체는 어렵지 않았다. 오히려 스토리가 있어 재미있었던 문제! 안녕? 내 이름은 이다솜. 나의 꿈은 포켓몬 마스터야. 일단 포켓몬 마스터가 되기 위해선 포켓몬을 한 마리 잡아야겠지? 근처 숲으로 가야겠어. (뚜벅 뚜벅) 얏! 꼬렛이다. 꼬렛? 귀여운데, 나의 첫 포켓몬으로 딱 어울린데? 내가 잡고 말겠어. 가라! 몬스터볼~ (펑!) 헐랭... 왜 안 잡히지?ㅜㅜ 몬스터 ..

알고리즘 2021.09.30

프로그래머스_주식가격 (java)

문제설명: 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항: prices의 각 가격은 1 이상 10,000 이하인 자연수입니다. prices의 길이는 2 이상 100,000 이하입니다. 1. 처음 푼 방법 - 이중 for문 돌면서 지정한 i인덱스의 값과 j인덱스의 값을 비교해 i인덱스의 값보다 떨어질때까지 answer배열 i 인덱스 값을 ++해줌. (자바) public static int[] solution(int[] prices) { int len = prices.length; answer = new int[len]; // answer배열도 prices크기만큼 int i..

알고리즘 2020.09.06