it 취업을 위한 알고리즘 문제풀이 (with C/C++) : 코딩테스트 대비
it 취업을 위한 알고리즘 문제풀이 (with C/C++) : 코딩테스트 대비
수강정보
(38개의 수강평)
964명의 수강생
5개월 할부시
월 15,400원77,000원
지식공유자 : 김태원
113회 수업 · 총 24시간 54분 수업
기간 : 평생 무제한 시청
수료증 : 발급 강의
수강 난이도 : 초급

이 강의는

알고리즘과 자료구조를 이용해 문제해결력을 기르는게 주 목적입니다.

문제를 풀면서 자료구조와 알고리즘 기초·중급 개념을 확실히 잡고 다양한 문제를 통해 어떤 문제도 해결할 수 있는 문제해결력을 기릅니다.

1. 문제와 자동채점폴더를 제공하니, 영상을 보기 전에 꼭 먼저 문제를 스스로 풀어보고 자동채점폴더에서 채점을 받아보시기 바랍니다. 한 문제 당 20분 정도 스스로 도전해보고 안될 경우 영상을 보시는 게 제일 좋습니다. (처음 10문제 정도는 영상을 바로 보고 적응하세요)
2. 모든 영상은 해당 문제를 해결하기 위한 풀이 방법 설명 부분과 소스코드를 구현하는 부분으로 이루어집니다.

※ 질문을 하실때는

질문하고자 하는 영상에서 "질문하기"로 질문을 해주시기 바랍니다. 질문의 제목에는 문제 이름을 적어주시고, 질문할 때 코드를 올리시려면 {;} 아이콘을 사용해서 올려주시면 감사하겠습니다.

사전지식

  • C언어 기본 문법

도움이 되는 분들

  • 문제를 풀면서 알고리즘과 자료구조를 배우고 싶으신 분
  • it계열 취업을 준비하시는 분
  • 대기업 소프트웨어 역량평가를 준비하는 분
  • 정보올림피아드에 도전하고 싶은 중고생

자동채점폴더에 대한 공지사항

  • 실전처럼 공부를 했으면 하는 바램으로 채점기를 만들어 무료 제공합니다. 다만 여러분의 컴퓨터가 직접 채점하는 채점기라 모든 컴퓨터에서 동작한다는 보장은 없습니다. 제가 저희 학생 15명 정도에게 테스트 해본 결과 윈도우 10은 다 되었고(물론 윈도우 10도 닷넷프레임워크를 설치하라고 할 수 있음), 윈도우 7은 dotNetFx45_Full_setup.exe를 설치해야 동작했습니다. dotNetFx45_Full_setup.exe도 같이 제공합니다. 그 외 동작하지 않는다면 여러분의 컴퓨터를 제가 볼 수없기 때문에 해결할 길은 없음을 공지합니다. 그냥 수동으로 여러분이 채점해 보야야 합니다. in1.txt파일이 입력데이터이고, out1.txt가 in1.txt의 정답 데이터입니다.
  • mac 컴퓨터에서는 채점프로그램이 작동하지 않습니다. 
  • 기본 원리를 공부하는 10개 정도의 문제는 채점폴더가 없습니다.
  • 채점 폴더에 넣는 실행 파일은 꼭 AA.exe 로 해주셔야 채점이 됩니다.
  • 여러분 컴퓨터의 성능에 따라 시간초과 결과가 나올 수 있습니다. 감안하시고 공부하시기 바랍니다.

지식공유자 소개

지니소프트랩 대표

정보올림피아드 강의경력 12년(전국대회 대상 및 입상자 다수 배출)

교육과정

모두 펼치기 113 강의 24시간 54분
섹션 0. 문제(소스) 파일 및 자동채점폴더
1 강의
강의 자료
섹션 1. 코드구현력 기르기
31 강의 310 : 57
1. 1부터 N까지의 M의 배수합
09 : 32
2. 자연수의 합
04 : 53
3. 진약수의 합
06 : 30
4. 나이 차이
10 : 54
5. 나이 계산(문자열 컨트롤)
10 : 33
6. 숫자만 추출 (문자열 컨트롤 : 아마존 인터뷰)
10 : 26
7. 영어 단어 복구(문자열 컨트롤)
06 : 35
8. 올바른 괄호(문자열 컨트롤)
07 : 52
9. 모두의 약수(제한시간 1초)
13 : 39
10. 자릿수의 합
10 : 07
11. 숫자의 총 개수 (small)
05 : 47
12. 숫자의 총 개수 (large : 제한시간 1초)
10 : 53
13. 가장 많이 사용된 자릿수
11 : 04
14. 뒤집은 소수
11 : 19
15. 소수의 개수(제한시간 1초)
06 : 58
16. Anagram (구글 인터뷰 문제)
11 : 02
17. 선생님 퀴즈
04 : 48
18. 층간 소음
08 : 24
19. 분노 유발자(1차원 배열의 필요성)
08 : 06
20. 가위 바위 보(기본코딩설계)
08 : 00
21. 카드게임(기본코딩설계)
12 : 45
22. 온도의 최댓값 (1차원 배열 구간합 : 제한시간 1초)
13 : 43
23. 연속 부분 증가수열
08 : 07
24. Jolly Jumpers
17 : 35
25. 석차 구하기(브루트포스)
07 : 05
26. 마라톤
06 : 42
27. N!의 표현법(소인수 분해 응용)
11 : 44
28. N!에서 0의 개수(소인수분해 응용)
06 : 27
29. 3의 개수는? (small : 구글 인터뷰)
05 : 09
30. 3의 개수는? (large : 제한시간 1초)
35 : 07
31. 탄화수소 질량
09 : 11
섹션 2. 정렬 & 이분탐색(결정알고리즘) & 투포인트 알고리즘 & 스택
26 강의 345 : 00
32. 선택정렬
14 : 29
33. 3등의 성적은? (정렬 응용)
06 : 29
34. 버블 정렬
09 : 32
35. Special Sort (버블정렬 응용: 구글 인터뷰)
06 : 27
36. 삽입정렬
11 : 20
37. Least Recently Used (삽입정렬 코드 스타일 : 카카오
18 : 38
38. Inversion Sequence (삽입정렬 코드스타일)
14 : 27
39. 두 배열 합치기(병합정렬 예비학습)
11 : 05
40. 교집합 (투포인트 알고리즘 : MS인터뷰 제한시간 1초)
10 : 38
41. 연속된 자연수의 합(단순 수리)
12 : 46
42. 이분검색
26 : 48
43. 뮤직비디오 (이분검색 응용 : 결정 알고리즘)
19 : 12
43번 뮤직비디오 반례 수정 영상
03 : 28
44. 마구간 정하기 (이분검색 응용 : 결정 알고리즘)
12 : 01
45. 공주 구하기 (조세퍼스)
12 : 01
46. 멀티 태스킹 (카카오 "먹방" 문제 변형)
13 : 43
47. 봉우리 (2차원 배열 탐색)
10 : 47
47. 봉우리 오류수정 및 2차원 vector 사용법
05 : 39
48. 각 행의 평균과 가장 가까운 값(2차원 배열 탐색)
11 : 40
49. 쌓기 블록의 최댓값 (2차원 배열 응용)
14 : 45
50. 영지 (territory) 선택 (small : 2차원 배열 브루트포스)
06 : 37
51. 영지 (territory) 선택 (large : 2차원 배열 구간합 : 제한시간 1초 : DP)
21 : 55
52. Ugly Numbers (투포인트 알고리즘 응용)
16 : 39
53. K진수 출력 (스택 자료구조 직접 구현)
17 : 39
54. 올바른 괄호 (STL stack 자료구조 활용)
14 : 06
55. 기차운행 (스택 자료구조 응용)
22 : 09
섹션 3. 재귀 & 깊이/넓이 우선탐색(DFS, BFS)
22 강의 331 : 00
56. 재귀함수 분석 (스택을 이용하는 재귀)
12 : 18
56. 재귀함수 분석 보충(스택 프레임)
09 : 52
57. 재귀함수(스택)를 이용한 2진수 출력
10 : 56
58. 이진트리 깊이우선탐색 (DFS: Depth First Search)
25 : 09
59. 부분집합 (MS 인터뷰 문제 : DFS 완전탐색)
13 : 53
60. 합이 같은 부분 집합 (아마존 인터뷰 문제 : DFS 완전탐색)
20 : 52
61. 특정 수 만들기 (MS 인터뷰 문제 : DFS 완전탐색)
16 : 20
62. 병합정렬 (분할 정복)
23 : 51
63. 인접행렬
18 : 02
64. 경로탐색 (그래프 DFS : Depth First Search)
20 : 59
65. 미로탐색 (2차원 배열 DFS)
15 : 27
[잠깐 지식] STL vector 생성방법
14 : 48
66. 경로탐색 (방향그래프 인접 리스트: used Vector)
14 : 01
67. 최소 비용 (그래프 DFS)
15 : 32
68. 최소 비용 (가중치 방향그래프 인접 리스트:vector, STL pair 자료구조)
15 : 34
69. 이진트리 넓이 우선 탐색 (큐 자료구조 직접구현 : BFS )
14 : 39
70. 그래프 최단거리 (BFS : Breadth First Search )
14 : 54
71. 송아지 찾기 (BFS : 상태트리탐색)
13 : 02
72. 공주 구하기 (조세퍼스 : 큐를 이용하는 방법)
08 : 17
73. 최대힙(STL priority_queue : 우선순위큐)
11 : 56
74. 최소힙(STL priority_queue : 우선순위큐)
03 : 34
75. 최대 수입 스케쥴(priority queue greedy: 구조체와 Vector를 이용한 정렬)
17 : 04
섹션 4. 그래프, DFS, BFS 관련 보충문제
17 강의 256 : 12
76. 이항계수(메모이제이션)
16 : 57
77. 친구인가?(Disjoint-set : Union&Find 알고리즘)
30 : 21
78. 원더랜드 : Kruskal MST(최소스패닝트리) 알고리즘 : Union&Find 활용
09 : 19
79. 원더랜드 : Prim MST(최소스패닝트리) 알고리즘 : priority_queue 활용
20 : 38
80. 다익스트라 알고리즘
29 : 05
81. 벨만-포드 알고리즘
18 : 52
82. 순열구하기(DFS : Depth First Search)
15 : 18
83. 복면산 SEND+MORE=MONEY (MS인터뷰)
05 : 44
84. 휴가(삼성 SW역량평가 기출문제 : DFS활용)
09 : 59
85. 수식만들기(삼성 SW역량평가 기출문제 : DFS활용)
06 : 54
[선수지식] 조합구하기
14 : 54
86. 피자 배달 거리(삼성 SW역량평가 기출문제 : DFS활용)
13 : 40
87. 섬나라 아일랜드(BFS 활용)
10 : 12
88. 미로의 최단거리 통로(BFS 활용)
06 : 55
89. 토마토(BFS 활용)
11 : 17
90. 라이언 킹 심바(삼성 SW역량평가 기출 : BFS활용)
15 : 54
[잠깐지식] STL map 자료구조 활용
20 : 13
섹션 5. Dynamic programming(동적계획법 )
16 강의 251 : 47
0.입출력 속도 향상시키기, 컴파일러 업그레드하기
19 : 31
1. 동적계획법이란? 네트워크 선 자르기(Bottom-Up)
15 : 35
2. 네트워크 선 자르기(Top-Down : 재귀, 메모이제이션)
11 : 50
3. 도전과제
08 : 21
4. 최대 부분 증가수열(LIS : Longest Increasing Subsequence)
18 : 41
5. 최대 선 연결하기(LIS응용)
06 : 57
6. 가장 높은 탑 쌓기(LIS응용)
18 : 26
7. 알리바바와 40인의 도둑(Bottom-Up)
15 : 03
8. 알리바바와 40인의 도둑(Top-Down)
14 : 03
9. 가방문제(냅색 알고리즘 : Knapsack algorithm)
21 : 00
10. 동전교환(냅색 알고리즘)
16 : 18
11. 최대점수 구하기(냅색 알고리즘)
28 : 25
12. 플로이드-와샬(그래프 최단거리)
29 : 22
13. 회장뽑기(플로이드-와샬 응용)
15 : 45
14. 위상정렬(그래프)
12 : 30
풀어보면 좋은 문제 목록 첨부

공개 일자

2019년 2월 26일 (마지막 업데이트 일자 : 2020년 7월 28일)

수강 후기

4.9
38개의 수강평
default_profile.png
HanYang Uiv.JH 2019.05.13
코딩테스트 준비를 위해서 여러 강좌를 들었었는데, 정말 하나도 모르겠더라구요. 이 분은 현장에서 학생들을 가르치는 분이라 그런지 정말 쉽게 전달해주는 것 같습니다. DFS 설명은 정말 최고였습니다. 3개월동안 정말 많은 것 배웠습니다.
default_profile.png
OMG 9달 전
코딩테스트 준비를 막 시작하신 분이라면 입문에 많은 도움이 되실 것 같습니다. 강좌를 들으시면서 온라인 저지 사이트에서 배운 내용을 복습하시면 실력이 금방 늘 수 있다고 생각합니다
default_profile.png
DH 9달 전
컴공으로 학부를 졸업했지만, 1부터10까지의 합도 제대로 못짜는 수준이었습니다. 그런데 김태원 선생님을 만나고부터 기초를 확실히 다질 수가 있었어요! 근데 강의 보면서 충분히 혼자 다른 문제를 통해서 복습해야하는데,, 다른 인적성 공부나 자격증 공부에 치중하다보니 많은 시간을 알고리즘 자습에 할애하지 못했던 점이 스스로 아쉽네요 ㅠ! 강의만큼은 정말 좋았습니다. 원래는 프로그래머스 기준 level1도 잘 못풀었는데.. 이 강의를 듣고 level2까지는 풀 수 있더라구요^^ ㅎㅎ 3부터는 스스로 하는 것이 중요한 것 같습니다. 처음에 목표했던 삼성전자는 못갔지만 다른 원하던 기업에 합격해서 취뽀했습니다. :) 이메일로 질문하고, 여기 인프런에서 질문해도 항상 친절하게 잘 답변해주셔서 감사했습니다. ^^ 항상 건강하세요 선생님~~~! +한가지 팁을 드리면 c++ 랭귀지는 따로 추가로 학습하시는 것 추천드립니다. multimap, unordered map 등을 학습하면 어려운 문제도 접근할 수 있더라구요.. 알고리즘도 중요하지만 기본적인 c++랭귀지 학습도 하는 것이 중요한 것 같습니다!
김태원

김태원 8달 전
취업 축하드립니다.^^ 원하신 기업에 들어갔으니 그곳에서도 승승장구하시기 바랍니다.

지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스