- 現어비스 대표 및 리드개발자
- 前 네이버 개발자
- 5년차 알고리즘 강사(네이버 / 카카오 / 라인 / 삼성 코딩테스트합격자 배출)
- 19, 20 IT 대기업 코딩테스트 합격자(All Solved)
- 2024 Meta HackerCup Round1 상위 12%
- 자바스크립트 테스트 프레임워크 Mocha.js contributor
- 저서 《 면접을 위한 CS전공지식노트 》 2022 / 국내IT도서 1위 베스트 셀러
- 저서 《 실시간 모니터링 시스템을 만들면서 정복하는 MEVN》 2021 / 국내IT도서 63위 베스트셀러
Introduce
Current CEO and Lead Developer at AVISS(https://aviss.kr/)
Former Software Engineer at NAVER
Algorithm Instructor with 5 years of experience (Produced successful candidates for NAVER, Kakao, LINE, and Samsung coding tests)
All problems solved in major coding tests for top IT companies in 2019 and 2020
Ranked in the top 0.1% on Baekjoon Online Judge (BOJ)
Ranked in the top 12% in Meta Hacker Cup 2024 Round 1
Contributor to the JavaScript testing framework Mocha.js
Author of “CS Knowledge Notes for Interviews” (2022) — No.1 Bestseller in IT category in Korea
Author of “Mastering MEVN by Building a Real-time Monitoring System” (2021) — Ranked 63rd in Korean IT bestsellers
Khóa học
Đánh giá khóa học
- Luyện thi coding C++ trong 10 tuần | Coding test thuật toán
- Luyện thi coding C++ trong 10 tuần | Coding test thuật toán
jinvvookim
·
CS Knowledge Essentials | Mạng lưới thiết kế mẫu Hệ điều hành Cơ sở dữ liệu Cấu trúc dữ liệuCS Knowledge Essentials | Mạng lưới thiết kế mẫu Hệ điều hành Cơ sở dữ liệu Cấu trúc dữ liệu- Luyện thi coding C++ trong 10 tuần | Coding test thuật toán
kls99393862
·
CS Knowledge Essentials | Mạng lưới thiết kế mẫu Hệ điều hành Cơ sở dữ liệu Cấu trúc dữ liệuCS Knowledge Essentials | Mạng lưới thiết kế mẫu Hệ điều hành Cơ sở dữ liệu Cấu trúc dữ liệu
Bài viết
Hỏi & Đáp
6-B 맞왜틀
안녕하세요 준석님 ㅎㅎ로직 자체는 좋습니다만 몇가지부분을 확인해야 합니다. l = 1; r = 10000;l, r 부분에 있어 최소 최대범위를 이렇게 잡으신 이유가 있으실까요? 최소는 해당 강의의 최댓값, 최대는 합산값이 되어야 합니다. vector v;해당 부분은 쓰이지 않고 있습니다. 나머지 부분은 다 좋습니다. l, r부분만 고쳐보시겠어요? 감사합니다.
- 0
- 2
- 12
Hỏi & Đáp
코딩테스트 관련 질문입니다.
안녕하세요 ㅎㅎ삼성은 visual studio에서 개발을 해볼 수 있던데 #include 를 입력하면 오류가 생기더라구요... 이럴땐 어떻게 해야되나요..?-> 해당 부분은 교안내의 다음 부분 참고부탁드립니다. (사진) 음... 그리구 저는 visual studio community는 추천드리지는 않습니다. 삼성이라면 SWEA 기반으로 연습하시는걸 더 추천드립니다. 또 질문 있으시면 언제든지 질문 부탁드립니다.좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)감사합니다.강사 큰돌 올림.
- 0
- 2
- 22
Hỏi & Đáp
3-D 불 코드 질문합니
안녕하세요 정재님 ㅎㅎ먼저 사람부터 짜게 되면 -> 사람이 불이 없는 것을 기반으로 이동경로가 설정되기 때문에 이상하게 로직이 생길 수 있습니다. 예를 들어 사람 -> . -> 불 이렇게 되어있는데 사람은 불 이부분과는 무관하게 사람 -> 사람 -> 사람 이렇게 이동하게 되어버려서 로직이 꼬여버리게 됩니다. 또한.. if (visited_F[ny][nx] > 0 && visited_F[ny][nx] 이거는 이렇게 하신이유가 있을까요? BFS로 하게 되면 어차피 visited_F는 최단거리가 적용이 되서 해당 부분은 필요없는 것 같습니다. 감사합니다.
- 0
- 3
- 25
Hỏi & Đáp
7-C 질문드려요
안녕하세요 병욱님 ㅎㅎ하지만 만약에 저장했던 최초로 연산했던 최장 경로와 다른 경로 B가 겹치게 된다면 캐시값을 사용하지 않고 직접 연산했을 상황에서는 무한 loop가 발생한것-> 혹시 이 경우 더 자세하게 얘기해주실 수 있나요? 이 문제에서 무한 루프가 발생하는 경우는 a -> b -> c -> a 이런식으로 사이클이 생겼을 때 입니다. 캐시와는 상관없는 것 같아서요. 감사합니다.
- 0
- 2
- 22
Hỏi & Đáp
3-D 불 코드 질문합니
안녕하세요 정재님 ㅎㅎ코드 공유 부탁드립니다.
- 0
- 3
- 25
Hỏi & Đáp
6-K
안녕하세요 ㅎㅎ auto it = lower_bound(lis.begin(), lis.end(), sequence[i]); if(it == lis.end()){ lis.push_back(sequence[i]); ret = lis; } else *it = sequence[i];이부분을 보시면 *it = sequence[i]로 대체하는 부분이 있습니다. 예를 들어 (base) zagabi@zagabiui-MacBookPro 코테 % ./test.out 4 2 5 3 7로 실행하면 32 3 7이 반환되게 됩니다. 물론 2, 3, 7은 정답이지만 이렇게 원본배열의 순서가 달라진 상태로 출력이 될 가능성이 있습니다. 예를 들어 다음과 같은 반례가 있습니다. 5 3 10 2 1 20수강생님 코드: 31 10 20 이러한 부분 때문에 틀리는 것 같습니다. 또한, LIS의 앞 부분을 건들여도 상관없는거니까-> 이부분에 대한 코드가 혹시 어디인가요? *it = sequence[i]는 lis의 앞부분이 아니라 lower_bound로 찾은 해당 부분을 바꾸는 코드입니다. 또 질문 있으시면 언제든지 질문 부탁드립니다.좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)감사합니다.강사 큰돌 올림.
- 0
- 2
- 24
Hỏi & Đáp
오류
안녕하세요 ㅎㅎ코드 너무 잘 짜셨네요 ㅎㅎ지금 보시면 visited 초기화를 잘못하신 것 같습니다. while (true) { fill(&visited[0][0], &visited[0][0] + 50 * 50, 0); bool flag = false;앞의 코드처럼 고쳐보시겠어요? 이부분은 교안내의 fill()함수부분 참고부탁드립니다. (배열 전체를 초기화를 하셔야 해요 ㅎㅎ)(사진) 또 질문 있으시면 언제든지 질문 부탁드립니다.좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)감사합니다.강사 큰돌 올림.
- 0
- 2
- 18
Hỏi & Đáp
3-A 질문드립니다!
안녕하세요 정재님 ㅎㅎ가장 먼저 틀린 부분은 이부분입니다. 배열을 좀 더 크게 해보시겠어요? 50까지니까 51까지의 인덱스는 필요합니다. int n, m, a[54][54]; if (idx == n+1) { if(v.size() == m && check) close(); return; }또한... 리뷰를 드리면.. 지금 보시면 인덱스를 1부터 시작해서 나중에 -1를 하는 로직인데요권장드리는 부분은 idx = 0부터 시작해서...먼저 idx를 매개변수로 넣어서 push, pop로직을 수행한다면 n - 1이 최대입니다. 즉, idx == n + 1이 아니라 n이 최대로 하는 것.void go(int idx, int n, bool check) {그리고 check는 불필요해 보입니다.go(idx + 1, v)v.push_backgo(idx + 1, v)v.pop_back이런식으로 하는게 좋습니다. dis = min(dis, abs(chicken[v[i] -1].first - home[j].first) + abs(chicken[v[i] -1].second - home[j].second));여기서도 v[i]로 해야 합니다. 또한, 현재 보시면 2^M으로 순열을 기반으로 하는 로직이 있는데 이부분을 조합으로 바꾸는 것이 더 좋습니다. 추가로 987654321 로 정하신 것도-> 이부분은 교안내에 다음부분에 설명되어있습니다. 참고부탁드립니다.(사진) 또 질문 있으시면 언제든지 질문 부탁드립니다.좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)감사합니다.강사 큰돌 올림.
- 0
- 2
- 22
Hỏi & Đáp
5-V
안녕하세요 ㅎㅎ대부분 정말 잘 짜셨네요 ㅎㅎ근데 이부분만 고쳐보시겠어요? 제가 한번 다듬어봤습니다. 😃#include using namespace std; int m, n, k, ret; vector a, b; vector go(vector &v){ vector mp(k+1, 0); for(int s = 0; s> k >> m >> n; for(int i = 0; i> temp; a.push_back(temp); } for(int i = 0; i> temp; b.push_back(temp); } a = go(a); b = go(b); ret += a[k] + b[k]; for (int i = 1; i 또 질문 있으시면 언제든지 질문 부탁드립니다.좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)감사합니다.강사 큰돌 올림.
- 0
- 2
- 22
Hỏi & Đáp
2-O 문제 해석 질문있습니다..
안녕하세요 ㅎㅎ마지막 .이 나왔을 때도 로직이 발동하는게 문제입니다. 예를 들어 다음의 사례에서 마지막 yes가 출력이 됩니다. [([]]). . 이부분을 고쳐보시겠어요? 감사합니다.
- 0
- 1
- 35