데이터 코딩랩
코테 준비용 알고리즘 문제풀기 - 코딩 테스트 준비 본문
알고리즘 기초 1
알고리즘 기초 2
알고리즘 중급 1
알고리즘 중급 2
알고리즘 중급 3
알고리즘 고급으로 가는 연결고리 1
알고리즘 고급으로 가는 연결고리 2
코딩 테스트 준비 - 기초
코딩 테스트 준비 - 연습
코딩 테스트 준비 - 문제
출처: 코드플러스
코딩 테스트 준비 - 기초
1. 시간 복잡도와 언어별 유의사항
알고리즘 문제를 해결할 때 가장 중요한 시간 복잡도에 대해서 먼저 알아봅니다. 언어별로 자주 하기 쉬운 실수 몇 가지도 함께 알아봅니다.
2. 수학
주로 사용하는 수학 관련 알고리즘인 소수 판별, 최대 공약수에 대해서 알아봅니다.
- 10430번 - 나머지
- 4375번 - 1
- 1037번 - 약수
- 17427번 - 약수의 합 2
- 17425번 - 약수의 합
- 2609번 - 최대공약수와 최소공배수
- 1978번 - 소수 찾기
- 1929번 - 소수 구하기
- 6588번 - 골드바흐의 추측
3. 브루트 포스
모든 경우의 수를 다 해보는 브루트 포스 알고리즘에 대해서 알아봅니다.
브루트 포스의 개념을 먼저 알아보고, 모든 방법을 만드는 방법인 재귀, 순열, 비트마스크에 대해서 알아봅니다. 재귀가 브루트 포스에서 가장 중요하니 재귀를 위주로 설명을 진행합니다.
다음 문제가 포함되어 있습니다.
브루트 포스
- 2309번 - 일곱 난쟁이
- 3085번 - 사탕 게임
- 1476번 - 날짜 계산
- 1107번 - 리모컨
- 14500번 - 테트로미노
- 6064번 - 카잉 달력
- 1748번 - 수 이어 쓰기 1
- 9095번 - 1, 2, 3 더하기
브루트 포스 - N과 M
- 15649번 - N과 M (1)
- 15650번 - N과 M (2)
- 15651번 - N과 M (3)
- 15652번 - N과 M (4)
- 15654번 - N과 M (5)
- 15655번 - N과 M (6)
- 15656번 - N과 M (7)
- 15657번 - N과 M (8)
- 18290번 - NM과 K (1)
브루트 포스 - 재귀
- 9095번 - 1, 2, 3 더하기
- 1759번 - 암호 만들기
- 14501번 - 퇴사
- 14889번 - 스타트와 링크
- 15661번 - 링크와 스타트
- 2529번 - 부등호
- 1248번 - 맞춰봐
브루트 포스 - 순열
브루트 포스 - 비트마스크
4. 다이나믹 프로그래밍
다이나믹 프로그래밍의 개념과 점화식을 세우는 방법을 자세하게 알아봅니다.
다이나믹 프로그래밍 Part 1
- 1463번 - 1로 만들기
- 11726번 - 2×n 타일링
- 11727번 - 2×n 타일링 2
- 9095번 - 1, 2, 3 더하기
- 11052번 - 카드 구매하기
- 16194번 - 카드 구매하기 2
- 15990번 - 1, 2, 3 더하기 5
- 10844번 - 쉬운 계단 수
- 2193번 - 이친수
- 11053번 - 가장 긴 증가하는 부분 수열
- 14002번 - 가장 긴 증가하는 부분 수열 4
- 1912번 - 연속합
- 1699번 - 제곱수의 합
- 14501번 - 퇴사
- 2225번 - 합분해
다이나믹 프로그래밍 Part 2
- 15988번 - 1, 2, 3 더하기 3
- 1149번 - RGB거리
- 1309번 - 동물원
- 11057번 - 오르막 수
- 2156번 - 포도주 시식
- 1932번 - 정수 삼각형
- 11055번 - 가장 큰 증가 부분 수열
- 11722번 - 가장 긴 감소하는 부분 수열
- 11054번 - 가장 긴 바이토닉 부분 수열
- 13398번 - 연속합 2
- 2133번 - 타일 채우기
5. 그래프와 BFS
가장 중요한 자료구조인 큐에 대해서 알아보고, 그래프와 DFS, 그리고 BFS를 알아봅니다. 이후 BFS를 이용해서 풀 수 있는 문제들을 연습해봅니다.
큐와 그래프
- 10845번 - 큐
- 10866번 - 덱
- 13023번 - ABCDE
- 1260번 - DFS와 BFS
- 11724번 - 연결 요소의 개수
- 1707번 - 이분 그래프
- 2667번 - 단지번호붙이기
- 2178번 - 미로 탐색
- 7576번 - 토마토
- 7562번 - 나이트의 이동
BFS
6. 시뮬레이션과 구현
시뮬레이션과 다양한 구현 문제에 대해서 알아봅니다.
- 16935번 - 배열 돌리기 3
- 16926번 - 배열 돌리기 1
- 16927번 - 배열 돌리기 2
- 14499번 - 주사위 굴리기
- 14890번 - 경사로
- 15662번 - 톱니바퀴 (2)
- 14503번 - 로봇 청소기
- 14890번 - 경사로
- 15685번 - 드래곤 커브
- 2290번 - LCD Test
- 16931번 - 겉넓이 구하기
- 1917번 - 정육면체 전개도
- 16967번 - 배열 복원하기
- 20327번 - 배열 돌리기 6
- 20055번 - 컨베이어 벨트 위의 로봇
코딩 테스트 준비 - 연습
브루트 포스 - 재귀
- 6603번 - 로또
- 1182번 - 부분수열의 합
- 14225번 - 부분수열의 합
- 14888번 - 연산자 끼워넣기
- 15658번 - 연산자 끼워넣기 (2)
- 14500번 - 테트로미노
- 16197번 - 두 동전
- 16198번 - 에너지 모으기
- 9663번 - N-Queen
- 2580번 - 스도쿠
- 4574번 - 스도미노쿠
브루트 포스 - 순열
브루트 포스 - 비트마스크
브루트 포스 - 기타
2. 그래프와 BFS
기초에서 배운 그래프 알고리즘과 BFS 알고리즘을 이용해 다양한 문제들을 풀어봅니다.
그래프 알고리즘
BFS 알고리즘
- 16928번 - 뱀과 사다리 게임
- 16948번 - 데스 나이트
- 14502번 - 연구소
- 12886번 - 돌 그룹
- 2206번 - 벽 부수고 이동하기
- 16946번 - 벽 부수고 이동하기 4
- 14442번 - 벽 부수고 이동하기 2
- 16933번 - 벽 부수고 이동하기 3
- 16954번 - 움직이는 미로 탈출
- 16236번 - 아기 상어
- 6087번 - 레이저 통신
- 1963번 - 소수 경로
- 10026번 - 적록색약
- 14395번 - 4연산
- 5014번 - 스타트링크
- 9376번 - 탈옥
- 1600번 - 말이 되고픈 원숭이
- 17086번 - 아기 상어 2
- 4991번 - 로봇 청소기
- 2234번 - 성곽
- 12906번 - 새로운 하노이 탑
- 17141번 - 연구소 2
- 17142번 - 연구소 3
3. 다이나믹 프로그래밍
- 11048번 - 이동하기
- 11060번 - 점프 점프
- 10942번 - 팰린드롬?
- 15989번 - 1, 2, 3 더하기 4
- 11066번 - 파일 합치기
- 12865번 - 평범한 배낭
- 1495번 - 기타리스트
- 12869번 - 뮤탈리스크
- 10422번 - 괄호
- 2293번 - 동전 1
- 2294번 - 동전 2
- 11058번 - 크리보드
- 9251번 - LCS
- 9252번 - LCS 2
- 5582번 - 공통 부분 문자열
- 5557번 - 1학년
4. 시뮬레이션과 구현
- 16234번 - 인구 이동
- 16235번 - 나무 재테크
- 17144번 - 미세먼지 안녕!
- 17143번 - 낚시왕
- 17140번 - 이차원 배열과 연산
- 17780번 - 새로운 게임
- 17837번 - 새로운 게임 2
- 17822번 - 원판 돌리기
- 16939번 - 2×2×2 큐브
- 16974번 - 레벨 햄버거
- 20061번 - 모노미노도미노 2
- 19236번 - 청소년 상어
- 19237번 - 어른 상어
코딩 테스트 준비 - 문제
1. 브루트 포스
브루트 포스 Part 1
- 16968번 - 차량 번호판 1
- 16917번 - 양념 반 후라이드 반
- 16922번 - 로마 숫자 만들기
- 16924번 - 십자가 찾기
- 16936번 - 나3곱2
- 16937번 - 두 스티커
- 16938번 - 캠프 준비
- 16943번 - 숫자 재배치
- 16637번 - 괄호 추가하기
- 15683번 - 감시
- 17088번 - 등차수열 변환
- 15686번 - 치킨 배달
- 2210번 - 숫자판 점프
- 2422번 - 한윤정이 이탈리아에 가서 아이스크림을 사먹는데
- 17089번 - 세 친구
- 17406번 - 배열 돌리기 4
- 17135번 - 캐슬 디펜스
- 17281번 - ⚾
브루트 포스 Part 2
- 17779번 - 게리맨더링 2
- 17070번 - 파이프 옮기기 1
- 17069번 - 파이프 옮기기 2
- 16638번 - 괄호 추가하기 2
- 17085번 - 십자가 2개 놓기
- 17825번 - 주사위 윷놀이
- 16987번 - 계란으로 계란치기
- 16988번 - Baaaaaaaaaduk2 (Easy)
- 15684번 - 사다리 조작
- 16945번 - 매직 스퀘어로 변경하기
- 16953번 - A → B
- 17136번 - 색종이 붙이기
- 17471번 - 게리맨더링
브루트 포스 Part 3
- 16985번 - Maaaaaaaaaze
- 17090번 - 미로 탈출하기
- 12931번 - 두 배 더하기
- 16958번 - 텔레포트
- 12908번 - 텔레포트 3
- 16957번 - 체스판 위의 공
- 16971번 - 배열 B의 값
- 17472번 - 다리 만들기 2
- 14056번 - K번째 좋은 문자열
그래프와 BFS
그래프 알고리즘
BFS 알고리즘
- 8111번 - 0과 1
- 17071번 - 숨바꼭질 5
- 16973번 - 직사각형 탈출
- 1175번 - 배달
- 16959번 - 체스판 여행 1
- 16952번 - 체스판 여행 2
- 12851번 - 숨바꼭질 2
- 9328번 - 열쇠
- 16920번 - 확장 게임
- 15653번 - 구슬 탈출 4
- 15558번 - 점프 게임
- 1385번 - 벌집
다이나믹 프로그래밍
- 1695번 - 팰린드롬 만들기
- 11049번 - 행렬 곱셈 순서
- 12969번 - ABC
- 14238번 - 출근 기록
- 12026번 - BOJ 거리
- 12996번 - Acka
- 2281번 - 데스노트
- 3012번 - 올바른 괄호 문자열
- 2616번 - 소형기관차
- 1413번 - 박스 안의 열쇠
- 10564번 - 팔굽혀펴기
- 1970번 - 건배
- 2163번 - 초콜릿 자르기
- 12872번 - 플레이리스트
4. 시뮬레이션과 구현
'Algorithm > 이론' 카테고리의 다른 글
우선순위 큐(Priority Queue) (0) | 2024.05.28 |
---|---|
스택과 큐 (2) | 2024.03.12 |
코테 준비용 알고리즘 문제풀기 - 고급으로 가는 연결고리 (0) | 2024.03.11 |
코테 준비용 알고리즘 문제풀기 - 중급 (0) | 2024.03.11 |
코테 준비용 알고리즘 문제풀기 - 기초 (0) | 2024.03.11 |