목록2024/04 (14)
Dazzling 개발 노트
지난번 포스팅에서 우리에프아이에스의 코테, 인적성 후기를 올리고 떨어졌을 것이라 생각했는데,운이 좋게도 면접 연락이 왔다! 당연히 떨어졌을 줄 알았던 전형에서 연락이 오니 신기했고, 드디어 첫 면접을 보게 되었다. [ 1차 면접 ]- 오프라인- 장소 : 우리금융상암센터 - 복장 : 정장- 면접 방식 : 다대다 (면접관 6명, 면접자 5명)- 면접 내용 : 입사지원서 기반의 질의응답 우리 조는 예외적으로 면접자도 6명으로 구성되어 진행했다.다대다 면접이라서 그런지 개인적 질문은 하나도 없었고 전부 공통 질문이었다.1시간 정도 진행되었고, 질문은 총 6개 정도 되었다. - 프로젝트 진행 중 기술적으로 어려웠던 경험- AI가 유행하고 있는데, 사용 경험과 회사에서 적용한다면 어떻게 적용할 수 있을지- 회사에서..
힙 완전 이진트리 형태의 최대, 최솟값을 빠르게 찾아내는데 유용한 자료구조 최소 힙 부모 노드의 key가 자식 노드의 key보다 작거나 같은 완전 이진트리 최대 힙 부모 노드의 key가 자식 노드의 key보다 크거나 같은 완전 이진트리 JAVA로 힙 구현하기 우선순위 큐인 PriorityQueue를 통해 구현할 수 있다. 최대 힙은 내림차순 정렬이어야 하므로, Collections.reverseOrder 옵션을 추가해서 사용한다. PriorityQueue q = new PriorityQueue(Collections.reverseOrder()); 예제 문제 https://www.acmicpc.net/problem/11279 11279번: 최대 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 ..
총 3개 문제, 2시간 동안 진행됐다. 1번A의 좌표와 B의 좌표, 지하철 순환선 사각형의 네 개의 꼭짓점 좌표가 주어진다.A에서 B로 가기 위해 최소한으로 걷는 거리를 구해야 한다.A에서 B로 직접 걸어가는 것이 더 가깝다면 그게 답이고A에서 순환선까지 거리가 1, B에서 순환선까지 거리가 2 이런식이 문제 예전에도 어디서 풀었던 문제 같은데 찾아봐도 안보인다.. 다른 기업 코테 기출문제 같다. 나는 점과 점 사이거리 Math.abs(ax-bx) + Math.abs(ay-by)를 이용해서 풀었다.사각형 좌표를 가지고 순환선이 갖는 모든 좌표를 list에 저장그 후 A에서 사각형까지의 최소 거리 + B에서 사각형까지의 최소 거리와A와 B 사이의 점과 점 사이 거리 중 더 짧은 것을 선택해서 반환하도록 풀..
[백준] 11055 - 가장 큰 증가하는 부분수열 (Java) 문제 https://www.acmicpc.net/problem/11055 풀이/후기 예전에 풀었던 문제지만, 코테 스터디 문제로 선택되어 다시 풀게 됐다. 문제를 보자마자 dp로 풀어야겠다는 생각이 들었고, 어떻게 구현할지도 대략 그려졌다. 예전에 dp 공부하면서 풀면서도 이걸 어떻게 하라는거지? 했었는데.. 이젠 문제 보자마자 dp로 풀어야겠다, 어떻게 하면 될까? 고민하는 스스로가 아주 뿌듯했다! 비록 초반에 작성한 코드는 오답이었지만, 명확히 이해하고 푼 것 같아 만족스럽다. 코드 import java.io.*; import java.util.*; public class Main { public static void main(String..
[프로그래머스] 콜라 문제 (Java) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/132267 풀이/후기 문제를 보자마자 재귀로 풀어야겠다는 생각이 들었다. 평소 재귀에 약해서 두려움이 있었지만, 최대한 재귀로 풀기 위해 신경썼다. 다른 사람들 풀이를 보니 더욱 간단한 방법도 있는 것 같지만, 그래도 만족스럽다^_^ 코드 class Solution { static int answer = 0; public int solution(int a, int b, int n) { return colla(a, b, n); } static int colla(int a, int b, int n){ if (n < a) return answer; int out..
[프로그래머스] 소수 찾기 (Java) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/12921 풀이/후기 1부터 n까지라는 것을 보고 dp로 풀 수 있지 않을까? 하고 dp로 풀었다. 소수일 때마다 카운트를 하는 것과 성능차이가 날지 궁금해서 풀어보니 확실히 속도는 dp가 빨랐다. 이 문제에서 큰 효율을 본 것은 아니지만...! 예전엔 dp너무 어려워서 엉엉 울었는데,, 이제는 활용 방안을 생각해 낼 수 있어서 뿌듯했다. 코드 dp로 푼 풀이 class Solution { public int solution(int n) { int[] dp = new int[n+1]; dp[1] = 0; dp[2] = 1; for (int i=3; i
[백준] 11060 - 점프 점프 (Java) 문제 https://www.acmicpc.net/problem/11060 풀이/후기 dp로 푸는 것을 파악했고, 점화식도 혼자 잘 찾았다! 근데 여러 번 제출해도 자꾸 틀렸다고 나왔다..ㅠ 인덱스를 0부터 시작했는데, 이 부분을 고쳐주니 정답이 되었다. 0으로 시작하면 만약 입력값이 0부터 시작될 때 아예 움직일 수 없는 상태가 되기 때문이다! 코드 import java.io.*; import java.util.*; public class Main { static int N; public static void main (String[] args) throws IOException { BufferedReader br = new BufferedReader(new..
[프로그래머스] 오픈채팅방 (Java) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/42888 풀이/후기 생각보다 쉽고 간단하게 해결할 수 있는 문제였는데, 비효율적으로 풀다가 테스트케이스 하나가 안넘어가서 삽질을 엄청했다 ㅎ 로그를 id로 미리 기록한 후 닉네임은 최종 값을 기준으로 id를 덮어씌우도록 풀었다. map을 잘 활용해서 푼 것 같아 좋았다! 코드 import java.util.*; class Solution { public ArrayList solution(String[] record) { HashMap map = new HashMap(); ArrayList answer = new ArrayList(); // id : 닉네임 ..