🚀 토스, 포항공대 출신 | 백엔드 8년차
🎥 2만 유튜버 | 개발 콘텐츠 제작
📚 인프런 강사 | 누적 수강생 5,000+
🤖 AI 와 개발자 취업에 진심입니다
개취뽀 커뮤니티 운영중 4,000+
코딩을 뒤집다, 딩코딩코. 쉽고, 연역적으로 이해되는 지식을 전달합니다.
Khóa học
Đánh giá khóa học
haleyshin15598
·
Chỉ 60 phút thôi! Bài giảng cực kỳ cô đọng về các khái niệm cốt lõi của Python - Tập trung vào sự hiểu biết hơn là lý thuyếtChỉ 60 phút thôi! Bài giảng cực kỳ cô đọng về các khái niệm cốt lõi của Python - Tập trung vào sự hiểu biết hơn là lý thuyếtizeus12039
·
Chỉ 60 phút thôi! Bài giảng cực kỳ cô đọng về các khái niệm cốt lõi của Python - Tập trung vào sự hiểu biết hơn là lý thuyếtChỉ 60 phút thôi! Bài giảng cực kỳ cô đọng về các khái niệm cốt lõi của Python - Tập trung vào sự hiểu biết hơn là lý thuyết- The 10x AI-Native Developer: Cách tạo ra thành quả áp đảo bằng AI trong công ty
yhs3334279
·
Chỉ 60 phút thôi! Bài giảng cực kỳ cô đọng về các khái niệm cốt lõi của Python - Tập trung vào sự hiểu biết hơn là lý thuyếtChỉ 60 phút thôi! Bài giảng cực kỳ cô đọng về các khái niệm cốt lõi của Python - Tập trung vào sự hiểu biết hơn là lý thuyết- 38 nơi đậu bí quyết, 2025 thuật toán thiết yếu coding test
Bài viết
Hỏi & Đáp
[4주차]숙제1번
앗 안녕하세요 한달안에 끝낸다님!!! 좋은 질문 감사합니다!! stock 이 k 보다 많거나 같아야 k날까지 버틸 수 있습니다. 따라서 그 전까지(stock 교재를 수정했고, 추가적으로 경계값 테스트 케이스들을 다수 추가해뒀습니다 말씀해주셔서 넘넘 감사드립니다! 강의에 기여해주셔서 감사합니다 🙇강의에 기여해주심에 감사의 의미로 커피 기프티콘을 드리고 싶습니다 혹시 아래 오픈채팅으로 연락주실 수 있을까요?! https://open.kakao.com/me/ding_coding_co오늘도 좋은 하루 보내세요!
- 1
- 2
- 31
Hỏi & Đáp
lovable에서 DB연결하는 방법
안녕하세요 leoni님!!저는 현재도 lovable 프로젝트 에 supabse 가 노출이 되고 있습니다(사진) 아마 환경(해상도)에 따라 UI 노출되는게 조금 다른 것 같은데, 이분이 설정하신 것처럼 한 번 설정해보실 수 있을까요? 바이브서퍼 단톡방에서 비슷한 문제를 경험하신 분들이 계시더라구요!!영상 링크
- 0
- 2
- 25
Hỏi & Đáp
colab 프로그램 설정 관련 안내
안녕하세요 온정은님!https://colab.research.google.com/drive/1Cs_TKHeMaPfmyJRCwfOAyPb3A77NgbN8?usp=sharing해당 링크 참고해주시면 됩니다!!!
- 0
- 5
- 84
Hỏi & Đáp
파이썬에서 자주 사용하게 되는 모듈을 정리하신게 있을까요
안녕하세요 브루브루님 실무 자료구조 라이브러리 비교표를 교재 내에 첨부했습니다!!넘넘 좋은 아이디어 감사합니다!! 덕분에 추가해뒀습니다 😍(사진)표
- 0
- 2
- 24
Hỏi & Đáp
코테 언어
안녕하세요 hxyr1n 님!! 자바로 준비하다가 파이썬으로 바꿀까 고민되는 시점이시군요! 이런 고민은 정말 많은 분들이 하시는 부분이에요. 1. 언어는 도구일 뿐, 사고과정이 핵심코테에서 가장 중요한 건 "어떤 알고리즘을 써야 하는지" 판단하고 "로직을 구성하는 능력"이에요. 자바든 파이썬이든 이 사고과정은 동일하죠. 다만 그 사고를 코드로 표현하는 속도와 편의성에서 차이가 납니다2. 파이썬의 실전 장점실전에서 느낀 파이썬의 가장 큰 장점은 구현 속도입니다. 같은 로직을 짜도 자바보다 훨씬 빠르게 코드를 완성할 수 있었어요. 문법적 편이성이 매우 큽니다. 코테 시간이 보통 2-3시간인데, 이런 작은 차이들이 모이면 실제로 한 문제를 더 풀 수 있는 시간이 생겨요.3. 현실적인 판단 기준여러분의 상황을 보면 "자바 문법은 어느 정도 익숙하지만" 이라고 하셨는데, 제가 드리고 싶은 질문은 이거예요실전 코테를 본다고 가정했을 때, 자바로 2시간 안에 3-4문제를 편하게 구현할 자신이 있으신가요? 만약 "음... 시간이 빠듯할 것 같은데?" 라는 생각이 드신다면 파이썬 전환을 진지하게 고려해볼 타이밍이에요.4. 제 추천코테까지 시간이 2-3주 이상 남았다면 파이썬으로 바꿔보는 걸 추천드려요. 파이썬 기본 문법은 진짜 쉬워서 일주일이면 충분히 익숙해지실 거예요. 그리고 나머지 시간엔 알고리즘 문제 푸는 데 집중할 수 있죠.하지만 코테가 일주일 안에 있다면 지금 익숙한 자바로 가는 게 나아요. 언어 바꾸는 리스크보다 지금 아는 언어로 더 많은 문제를 푸는 게 낫거든요.만약 파이썬으로 바꾸기로 하셨다면, 이전에 자바로 풀었던 문제들을 파이썬으로 다시 짜보세요. 같은 로직인데 코드가 얼마나 간결해지는지 보면 확 동기부여가 될 거예요. 백준이나 프로그래머스에서 쉬운 문제부터 시작해서 감을 익히시면 됩니다.언어는 결국 여러분의 사고를 표현하는 도구일 뿐이에요. 더 편한 도구로 바꾸는 건 전혀 문제될 게 없어요. 오히려 실전에서 시간을 아낄 수 있다면 당연히 바꾸는 게 맞죠!지금 고민하고 계신 것 자체가 좋은 신호예요. 자신의 문제점을 파악하고 개선하려는 마음가짐이니까요. 어떤 선택을 하시든 응원할게요! 파이썬으로 바꾸셔도 금방 적응하실 거고, 자바로 가셔도 연습하다 보면 속도가 붙을 거예요. 화이팅!더 궁금한 점 있으시면 언제든 물어보세요!
- 0
- 2
- 34
Hỏi & Đáp
hooks에서 commit 제한은 좀 힘들까요?
안녕하세요 젓인님!!hooks matcher (https://docs.claude.com/ko/docs/claude-code/hooks#%EA%B5%AC%EC%A1%B0) 가 한정되어있다는게 어떤 말씀이실까요?_? 정확하게 질문을 이해하지 못한 것 같습니다 ;_;
- 0
- 2
- 17
Hỏi & Đáp
3-8 출석체크 문제 질문
딸바맛있따님 좋은 질문 감사합니다!! 1. 시간 복잡도는 똑같습니다둘 다 O(N)이에요. 딕셔너리든 set이든 둘 다 해시 테이블 기반이거든요.강의 방법: O(N + M) → O(N) 제안 방법: O(M + N) → O(N)Big-O 표기법으로는 차이가 없어요. 2. 실제 연산 횟수에서 차이가 나요강의 방법: 삽입 9번 + 삭제 8번 = 17번 해시 연산제안 방법: 삽입 8번 + 조회 평균 4.5번 = 12.5번 해시 연산제안 방법이 평균적으로 30% 정도 연산이 적어요. 그리고 삭제 연산이 되게 무거운 편이라서 제안해주신 방법이 훨씬 이득입니다! 3. 공간 복잡도 차이강의 방법: O(N) - all_array 전체 저장 (9명)제안 방법: O(M) - present_array만 저장 (8명)present_array가 항상 더 작으니까 메모리를 조금 덜 써요. 4. 조기 종료 가능 여부강의 방법: 무조건 all_array, present_array 전부 순회제안 방법: all_array 순회 중 결석자 찾으면 바로 return최선의 경우 1명만 확인하고 끝날 수 있어요. 5. 실전에서는요?이 문제처럼 N이 작으면 (수십 명) 체감되는 차이는 거의 없어요. 둘 다 밀리초 안에 끝나거든요.하지만 N이 10만, 100만 되면 제안 방법이 확실히 유리해요. 특히 결석자가 앞쪽에 있으면 조기 종료로 엄청 빨라지고요. 6. 최종 답변성능상 "약간" 더 빠릅니다. 중요한 건 둘 다 해시를 쓴다는 거예요. 이중 반복문 O(N²)을 해시로 O(N)으로 줄인 게 핵심이고, 딕셔너리냐 set이냐는 디테일의 차이지만, 이렇게 여러가지 생각해보시면서 개선하려는 모습 넘넘 좋습니다!! 언제든 더 시도해보시면서 개선시켜보시길 추천드립니다!!1
- 0
- 2
- 29
Hỏi & Đáp
C#에서 Heap(+) 우선순위큐)
안녕하세요 디맂님!! 제가 C# 을 사용해본적이 없어서...SortedSet 을 프로그래머스에서 사용이 안되시나요?_?해당 질문 링크 보면 사용가능한 것 같아 보여서 요 방식으로 실험해보시는 거 어떠실지 제안드려봅니닷 https://school.programmers.co.kr/questions/90498?referer=collection-of-questions ref) https://learn.microsoft.com/ko-kr/dotnet/api/system.collections.generic.sortedset-1?view=net-5.0
- 0
- 2
- 26
Hỏi & Đáp
구현/시뮬레이션 문제에 대한 준비 방법이 궁금합니다
안녕하세요 zxcvb 님 좋은 질문 감사합니다! 구현/시뮬레이션 문제가 가장 답답한 게, 알고리즘은 알겠는데 "조건 처리"가 복잡해서 막히는 거잖아요. 저도 똑같은 고민 많이 했어요.구현력 향상을 위한 체계적인 훈련법 문제를 다음과 같이 이렇게 정리해보시길 추천드립니다. A(데이터) B(행위) C(결과)"A라는 데이터를 잘 조작해서, 조건들(1, 2, 3...)을 갖고, B라는 행위를 통해, C라는 결과를 구하고 싶은데 한 번 해보시죠!"예를 들어 "로봇이 격자판을 이동하면서 아이템을 먹는" 문제라면:A: 격자판, 로봇 위치, 아이템 위치 (2차원 배열로 저장)조건: 이동 규칙, 벽 체크, 범위 체크B: 시뮬레이션 (로봇을 실제로 움직여보기)C: 먹은 아이템 개수이렇게 정리하고 시작하면 훨씬 명확해집니다패턴 파악이 핵심이게 진짜 중요한데요, 감이 안 오면 손으로 예시를 3~10개 써보세요.예를 들어 시뮬레이션 문제에서 "로봇이 동쪽으로 2칸, 북쪽으로 1칸 이동"이라는 명령이 있다면:예시 1: (0,0)에서 동쪽 2칸 → (2,0), 북쪽 1칸 → (2,1) 예시 2: (1,1)에서 동쪽 2칸 → (3,1), 북쪽 1칸 → (3,2)예시 3: (0,3)에서 동쪽 2칸 → (2,3), 북쪽 1칸 → (2,4)이렇게 쓰다 보면 "아, 동쪽은 x좌표 증가, 북쪽은 y좌표 증가구나. 방향별로 dx, dy 배열 만들면 되겠다!" 패턴이 파악됩니다. 물론 이 패턴에 대한 것도 결국 문제를 여러가지 풀어봐야 더 체득이 되실거에요"일단 구현한다" 마인드처음부터 깔끔한 코드 짜려고 하지 마세요. 일단 동작하는 코드를 만드는 게 목표예요.나쁜 접근: "어떻게 하면 한 번에 완벽하게 짤 수 있을까?" (→ 시작도 못 함) 좋은 접근: "일단 조건 1번만 처리하는 코드 짜보자. 되네? 조건 2번 추가해보자." (→ 점진적 완성)예를 들어 "방향 전환하면서 이동" 문제면: 1단계: 일단 한 방향으로만 쭉 이동하는 코드 2단계: 방향 전환 로직 추가 3단계: 경계 체크 추가 4단계: 리팩토링이렇게 단계별로 구현하면 훨씬 쉽습니다시뮬레이션은 "진짜로" 시뮬레이션하기복잡한 시뮬레이션 문제일수록 "머릿속"으로 생각하지 말고 "종이 위"에 그려보시길 추천드립니다!예를 들어 "로봇이 명령에 따라 이동" 문제면종이에 격자 그리고로봇 위치를 표시하고명령 하나씩 따라가면서 위치 변화를 직접 그려보기이러면 "아, 여기서 방향이 바뀌는구나. 그럼 코드로는 이렇게 짜야겠다" 감이 올 수 있습니다!"문제 많이 풀어도 안 느는" 이유 특정 문제를 푸는 게 아니라 "이런 류의 조건을 어떻게 처리하는지" 경험치를 쌓아야 해요.예를 들어"2차원 배열에서 4방향 탐색" → 이거 패턴 10번 보면 손에 익음"회전/반사 변환" → 변환 행렬 만드는 법 3번 보면 이해됨"범위 체크와 동시에 조건 체크" → 함수 분리 패턴 익히면 쉬움그냥 100문제 푸는 게 아니라, "아 이 문제에서는 이런 패턴이 쓰였구나. 다음에 비슷한 거 나오면 이렇게 하면 되겠다" 하면서 패턴을 모으는 게 중요합니다! 이 배움을 문제 풀 때마다 노트에 기록하세요어떤 조건 처리가 어려웠는지어떻게 해결했는지다음에 비슷한 거 나오면 어떻게 할지예: "2차원 배열 회전 → zip(*arr[::-1]) 사용하면 90도 회전. 다음엔 바로 쓰자" 구현력은 정말 "경험치 게임"이에요. 똑같은 패턴을 10번 보면 손에 익고, 비슷한 조건 처리를 20번 하면 자동으로 짜지는 순간이 와요. 지금 안 느는 것 같아도 괜찮아요. 계속 하다 보면 어느 순간 "어? 이제 구현 문제가 쉽네?" 하는 날이 와요. 그때까지 패턴을 하나씩 모으면서 천천히 가보시길 응원하겠스빈다!! 같이 빠이팅해보시져!!
- 0
- 2
- 28
Hỏi & Đáp
인덱스 종류에 대해 질문드립니다!
라이언님 좋은 질문 해주셔서 감사합니다!!1. 커버링 인덱스 상황에서는 논클러스터드가 더 빠를 수 있습니다질문 주신 관점이 정확합니다! 논클러스터드 인덱스가 항상 느린 건 아닙니다. 커버링 인덱스 상황이라면 오히려 논클러스터드 인덱스가 클러스터드 인덱스보다 빠를 수 있어요.왜냐하면 논클러스터드 인덱스는 필요한 컬럼만 가지고 있어서 데이터 크기가 작거든요. 예를 들어볼게요.사용자 테이블(id, name, email, address, phone, created_at, updated_at 등 10개 컬럼)에서 "name으로 검색해서 email만 조회"하는 쿼리가 있다고 하면SELECT email FROM users WHERE name = '홍길동'; INDEX(name, email)을 만들어두면 이게 커버링 인덱스가 되는데, 이 경우 논클러스터드 인덱스만 읽어도 되니까 실제 데이터 페이지를 안 찾아가도 됩니다. 반면 클러스터드 인덱스는 모든 컬럼(10개)을 다 들고 있어서 데이터 크기가 더 크죠.실제로 측정해보면 커버링 인덱스를 탄 논클러스터드 인덱스가 클러스터드 인덱스보다 30-50% 정도 빠른 경우도 많습니다. 왜냐하면 같은 메모리 공간에 더 많은 인덱스 데이터를 올릴 수 있거든요.2. 인덱스 분류 체계에 대한 이해는 거의 정확합니다말씀하신 대로 이해하시면 되는데, 조금만 더 정확하게 정리해드릴게요.클러스터드 인덱스와 논클러스터드 인덱스는 "인덱스의 종류"이고, 커버링 인덱스는 "인덱스의 상태"입니다.클러스터드 인덱스: 테이블당 1개만 존재 (보통 PK), 실제 데이터가 정렬된 상태논클러스터드 인덱스: 여러 개 만들 수 있음, 인덱스 키 + PK 주소를 가짐그리고 이 두 종류의 인덱스 모두 "커버링 인덱스 상태"가 될 수 있습니다. 커버링 인덱스는 "쿼리가 필요로 하는 모든 컬럼을 인덱스가 포함하고 있는 상황"을 말하는 거거든요.예를 들어SELECT * FROM users WHERE id = 1 → 클러스터드 인덱스를 쓰는데, 이것도 커버링 인덱스 상태SELECT email FROM users WHERE name = '홍길동' → INDEX(name, email)을 쓰면 논클러스터드 인덱스지만 커버링 인덱스 상태정리하면 이렇게 이해하시면 됩니다모든 인덱스는 "클러스터드" 또는 "논클러스터드" 중 하나그 인덱스가 쿼리를 처리할 때 추가 데이터 조회 없이 해결되면 "커버링 인덱스 상태"이런 개념을 실무에서 쓸 때는 EXPLAIN으로 실행 계획을 보면서 "Extra 컬럼에 Using index가 뜨는지"를 확인하면 됩니다. Using index가 뜨면 커버링 인덱스 상태로 동작하는 거거든요.좋은 질문 감사합니다!! 좋은 주말 보내세요
- 0
- 2
- 9