Least Recently Used public class Main { public int[] solution(int c, int n, int[] input) { int[] ans = new int[c]; for(int i = 0; i = 1; i--) { ans[i] = ans[i-1]; } } else { for(int i = idx; i >= 1; i--) { ans[i] = ans[i-1]; } } ans[0] = x; } return ans; } publ.. [Solved]/코딩테스트 2023.03.14
쇠막대기 절단 문제 (Stack) import java.util.Scanner; import java.util.Stack; public class Main { public int solution(String str) { int ans = 0; Stack stk = new Stack(); for(int i = 0; i < str.length(); i++) { char temp = str.charAt(i); if(temp == ')'){ if(str.charAt(i-1) == '(') { stk.pop(); ans += stk.size(); } else if(str.charAt(i-1) == ')') { ans++; stk.pop(); } } else if(temp == '(') stk.push(temp); } return ans; } pu.. [Solved]/코딩테스트 2023.03.13
import가 제대로 되지 않는 오류 얼마 전까지만 해도 괜찮았는데, Spring 프로젝트파일을 다시 여니 전체에 빨간불이 들어와있는 이슈가 발생했다. 한 5초정도 멍을 때리다가, import가 제대로 적용되지 않아 생긴 문제라는것을 깨닫고 구글(신)께 여쭤보기로 했다. https://velog.io/@jeon-yj/Spring-boot-%ED%85%8C%EC%8A%A4%ED%8A%B8-%EC%BC%80%EC%9D%B4%EC%8A%A4-%EC%9E%91%EC%84%B1 Spring boot, 인텔리제이 import 에러 본 게시물은 인프런 '스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술' 강의를 듣고 개인 공부용으로 작성하였습니다. 테스트 케이스 개발한 기능을 실행해서 테스트 할때 자바의 m velog.io 위 블.. [Project]/Favor 프로젝트 2023.03.12
크레인 인형뽑기 (Stack) import java.util.Scanner; import java.util.Stack; public class Main { public int solution(int l, int n, int[][] board, int[] moves) { int ans = 0; Stack stk = new Stack(); for(int x : moves) { for(int i = 0; i < l; i++) { if(board[i][x-1] != 0) { int temp = board[i][x-1]; board[i][x-1] = 0; if(stk.isEmpty()) { stk.push(temp); } else if(!stk.isEmpty() && stk.peek()==temp) { stk.pop(); ans += 2; }.. [Solved]/코딩테스트 2023.03.11
미래에셋증권 MTS M-STOCK 사용후기 업게 최초의 국내 MTS로 알려져 있던 m.Stock이 2022년, 국내/해외주식과 연금 등 기능별 3개의 앱을 통합해 M-STOCK으로 이름을 바꾸어 정식 서비스를 시작했다. M-STOCK 사용후기 전 세계 상품들을 한데 모아 원터치로 제공하고 24시간 투자 서비스와 마이데이터 서비스를 제공하는 등 다양한 기능들로 무장한 M-STOCK 이지만 처음 소비자 반응은 꽤나 부정적이었다. 특히 이전 m.Stock의 가볍고 빠른 사용감이 무거워지고 느려졌기 때문에 기존 사용자 입장에서 답답하게 느껴진다는 평을 많이 발견할 수 있었다. 초기에는 태블릿을 사용하는 사람 입장에서 뉴스피드를 보기 힘들다는 의견도 있었는데, 이 점 역시 현재는 개선되어 태블릿으로도 불편함 없이 M-STOCK을 이용할 수 있다. 가로모드.. [Finance] 2023.03.10
TreeSet, Red-Black Tree Set interface를 구현한 클래스. BinarySearchTree(이진탐색트리) 구조로 이루어져 있으며, 그 중에서도 성능을 향상시킨 Red-Black Tree로 구현되어있다. 일반적인 이진탐색트리의 경우, 입력값이 분산되어 들어오지 않고 한 쪽에 치우쳐서, 편향되어서 들어온다면 효율적이지 못하게 된다. 이 문제를 보완한 방식이 레드-블랙 트리이다. 레드-블랙 트리는 부모노드를 기준으로 왼쪽 오른쪽으로 배치해 편향되지 않은 구조가 되도록 한다. TreeSet 생성 TreeSet 생성 TreeSet treeSet = new TreeSet(); TreeSet 생성, 타입 파라미터 생략 TreeSet treeSet = new TreeSet(); treeSet_1의 값을 갖는 TreeSet 생성 Tree.. [Java]/문법, 자료구조, 알고리즘 2023.03.10
HashMap HashMap은 Map interface를 구현한 대표적인 Map Collection(데이터의 집합)이다. Map은 Key와 Value로 구성된 Entry 객체를 저장하는 구조의 자료구조이고, 이 때 Key와 Value는 둘 다 객체이다. Value는 중복저장이 가능하지만 Key는 중복저장이 불가능하다. 동일한 키로 저장 시 기존값을 삭제하고 해당 Key를 갖는 새로운 값으로 저장된다. HashMap 생성 HashMap 생성 HashMap map = new HashMap(); HashMap 생성 시, 타입 파라미터 생략 HashMap map = new HashMap(); HashMap 생성 시, HashMap map_1의 모든 값을 가진 HashMap 생성 HashMap map = new HashMap(.. [Java]/문법, 자료구조, 알고리즘 2023.03.10
소수 (에라토스테네스의 체) 자연수 N을 입력받고, 1부터 N까지의 소수의개수를 출력해야 할 경우 편입했을 당시 학교 온라인저지에서 풀었던 코드를 발견했는데 각각 숫자에 대해 2부터 x-1까지 반복문을 돌려 나머지==0 인 경우가 있으면 소수가 아님을 판별하는 brute force 방식, 전체 탐색 방식의 코드였다. O(N)의 시간복잡도를 갖는 비효율적인 방법이지만 1학년 초반의 수업이었음을 감안하여 Time Limit Exceeded가 발생하지 않는 테스트케이스들을 주셨던게 아닐까 한다.. 다음 방법은 N의 약수들이 대칭을 이루고 있다는 성질을 이용한 방법으로, N=20일 때 약수는 1, 2, 4, 5, 10, 20 이고 1과 N을 제외하고, 4와 5는 4*5=20 으로 대칭 관계이기 때문에 굳이 5까지 판별할 필요가 없다는 점을.. [Java]/문법, 자료구조, 알고리즘 2023.03.10
회원가입 처리 이슈 (API 분리) 이슈 하나의 API를 통해 회원가입 처리를 하는 대신 두 개의 뷰로 나누고 그에 맞춰 API를 분리하기로 함. 회원가입 API를 통해 생성된 User를 검색한 후 프로필생성 API를 통해 User에 프로필 정보를 추가하려고 했는데, 서버 단에서 회원가입 API의 결과를 프로필생성 API의 파라미터 값으로 사용하는 방법에 대해서 고민하게 되었다. (서비스에서 static 필드를 만들어야하나.. 까지 고민했다..) 해결 클라이언트 파트 친구들과 이야기한 결과, userResponseDto를 반환하면 클라이언트단에서 DTO의 User 식별자를 뽑아내어서 프로필 생성 API를 호출할 때 사용하면 된다고 한다. 전부 서버단에서 처리할 생각에 고민중이었는데 클라이언트단의 도움을 진작에 고려해봤다면 빨리 해결되지 않.. [Project]/Favor 프로젝트 2023.03.07
미래에셋금융서비스 TAMS 9기 후기 방학기간을 의미있게 보내기 위한 대외활동에 무엇이 있을까 고민하던 중, 우연히 미래에셋금융서비스에서 주최하는 글로벌 금융인 양성과정 TAMS 과정을 발견했다. 평소 금융권 취업에 관심이 있었지만 그에 반해서 금융권 도메인 지식이 부족하다고 생각했었기에 이를 채우기 위한 좋은 기회라고 생각해 사전 지원에 참가했다. 사전 지원한 인원들에 한해서 담당 멘토를 붙여주셨다. 당시에는 몰랐었는데, 멘토로 활동하신 선배님들.. 알고보니 전부 대단한 분들이셨다. 이는 교육과정이 진행되고 직접 멘토분들을 대면하며 더 자세하게 알게 되었다. 바쁘셨을텐데 시간을 쪼개서 지원서에 대한 피드백과 질문에 대한 답변을 꼼꼼하게 해주신 덕분에 서류전형에서 합격한 후 면접을 준비해 갈 수 있었다. 원래 면접 시간이 11:00am 이었.. [Finance] 2023.03.06