깔깔답지를 볼까 수많은 유혹의 생각들이 들었지만보지 않고 스스로의 힘으로 해냈다 이렇게 발전해나가는 나..제법 대견할지도? 각설하고,문제를 풀어보자! 각 기능은 진도가 100%일 때 서비스에 반영할 수 있다.또, 각 기능의 개발 속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 기능보다 먼저 개발될 수 있지만,뒤에 있는 기능은 앞에 있는 기능이 배포될 때 함께 배포된다. 배포되어야 하는 순서대로 작업의 진도가 적힌 정수 배열 progresses와각 작업의 개발 속도가 적힌 정수 배열 speeds가 주어질 때각 배포마다 몇 개의 기능이 배포되는지를 return 하는 문제다. import java.util.*;class Solution { public int[] solution(int[] prog..
알고리즘 분류- 브루트포스 알고리즘- 백트래킹 주어진 수열의 부분수열 중 원소를 다 더한 값이 S가 되는 경우의 수를 구하는 문제다.문제를 보고 depth를 하나씩 더해나가면서 백트래킹으로 풀어야겠다까지는 생각했는데 그걸 어떻게 구현해야 할지는 감이 안 왔다. 구글링 통해 알아낸 방법을 이해하려 노력했다.import java.util.*;import java.io.*;class Main { static int N, S, cnt; static int[] arr; public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReade..
배열 arr에서 연속적으로 나타나는 숫자를 하나만 남기고 제거해야 한다.이때 제거된 후 남은 수들은 배열 arr의 원소들의 순서를 유지해야 한다. 처음에는 문제를 제대로 안 읽고set을 사용해서 중복을 제거하려고 했지만,연속적으로 나타나는 숫자를 하나로 남기는 문제이므로 set은 사용할 수 없음을 알았다. 그래서 생각한 방법은앞에 숫자랑 비교해서 일치하지 않는 경우에만 list에 추가하고,마지막에 list를 arr로 바꿔 출력하는 것이었다.정확성 테스트, 효율성 테스트 모두 통과했다. import java.util.*;public class Solution { public int[] solution(int []arr) { ArrayList list = new ArrayList(); ..
알고리즘 분류- 수학- 조합론- 백트래킹- 재귀 크기가 k인 집합 S가 주어졌을 때 그 중 6개를 고를 수 있는경우의 수를 모두 출력하는 문제다. 머릿속으로는 kC6 경우의 수를집합 S에서 해당 index 찾아 출력하면 되겠다~생각했는데, 코드로 어떻게 combination을 구현하는지 몰라서 헤맸다. 찾아보니 재귀와 백트래킹을 사용해야 하는 문제였다.아직 나에게는 너무나 낯선 백트래킹 구현...머리로는 알겠는데 코드로 구현하는게 쉽지 않은 것 같다. import java.util.*;import java.io.*;class Main { static int k; static int[] S, numbers; static StringBuilder sb; public static ..
다음과 같이 풀었다.성공 코드import java.util.*;class Solution { public boolean solution(String[] phone_book) { Arrays.sort(phone_book); for (int i = 0; i 처음에는 아래와 같이 j의 범위를 i + 1부터 phone_book.length까지로 설정했다.실패 코드import java.util.*;class Solution { public boolean solution(String[] phone_book) { Arrays.sort(phone_book); for (int i = 0; i 그랬더니 정확성은 테스트는 모두 통과했는데효율성 테스트의 테스트3,..
오늘 좋은 기회로 아주경제 주최 '2025 아시아태평양 금융포럼'에 참석했다. 금융 IT에 관심이 있고 입사를 꿈꾸는 취준생 입장에서세계 경제의 불확실성과 양극화 문제를 알아보고,해당 상황에서 당국은 어떻게 대응해야 할 지 전문가들의 견해를 들어보고 싶어서서포터즈를 신청했다. (10만원 상당의 호텔 중식에도 끌린 건 안 비밀)https://linkareer.com/activity/230410 2025 아시아태평양금융포럼(Asia-Pacific Financial Forum) 서포터즈 모집 | 공모전 대외활동-링커리어대외활동인 2025 아시아태평양금융포럼(Asia-Pacific Financial Forum) 서포터즈 모집입니다. 혜택으로는 사은품 지급, 수료증 및 인증서 등이 있습니다.linkareer.co..
알고리즘 분류- 자료 구조- 우선순위 큐 https://www.acmicpc.net/problem/11279 N개의 줄에 정수 x가 주어진다. (1x가 자연수라면 배열에 x라는 값을 넣고,x가 0이라면 배열에서 가장 큰 값을 출력, 그 값을 배열에서 제거한다.배열이 비어있는 경우 가장 큰 값을 출력하라고 하면 0을 출력한다. 먼저 내가 처음 생각했던 방법은ArrayList를 선언하고,x가 자연수라면 add,x가 0이라면 Collections.max()로 max 값을 찾아 출력 및 제거하는 거였다.ArrayList 사용 (실패 코드)import java.util.*;import java.io.*;public class Main { public static void main(String[] args) ..
다음과 같이 풀었다.nums를 돌며 map에 종류 번호와 해당 번호가 나온 횟수를 저장한다.1) 종류 번호가 nums 배열 크기 / 2 보다 크다면 -> nums 배열 크기 / 2만큼만 선택할 수 있다.2) 작거나 같다면 -> 종류 번호 만큼 선택한다. import java.util.*;import java.io.*;class Solution { public int solution(int[] nums) { int answer = 0; HashMap pokemon = new HashMap(); for (int num : nums) { pokemon.put(num, pokemon.getOrDefault(num, 0) + 1); } ..