일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 백준
- 동적 프로그래밍
- CSS
- 딥러닝
- 파이썬
- 프로그래밍
- linux
- 코딩 테스트
- nlp
- kick start
- 코딩테스트
- 리눅스
- 킥스타트
- OS
- dp
- DFS
- google coding competition
- 브루트포스
- 프로그래머스
- 운영체제
- AI
- BFS
- 알고리즘
- PYTHON
- 코딩
- 네트워크
- 순열
- 구글 킥스타트
- 동적프로그래밍
- 그래프
- Today
- Total
목록백트래킹 (4)
오뚝이개발자
문제 https://www.acmicpc.net/problem/2239 2239번: 스도쿠 스도쿠는 매우 간단한 숫자 퍼즐이다. 9×9 크기의 보드가 있을 때, 각 행과 각 열, 그리고 9개의 3×3 크기의 보드에 1부터 9까지의 숫자가 중복 없이 나타나도록 보드를 채우면 된다. 예를 들어 다 www.acmicpc.net 나의 풀이 백트래킹을 사용해서 탐색을 해주면 된다. 검사할 항목은 가로, 세로, 3x3 사각형 안에 사용된 숫자들이 무엇인지이다. 이를 c1, c2, c3에 기록해두고 겹치지 않는 숫자 candidate들을 하나씩 넣어보면서 조건에 위배되는지를 살펴보고 위배된다면 백트래킹으로 다시 값들을 복구하고 다음 후보 숫자를 넣어 탐색하면 된다. 코드 # https://www.acmicpc.net..
문제 programmers.co.kr/learn/courses/30/lessons/43164# 코딩테스트 연습 - 여행경로 [[ICN, SFO], [ICN, ATL], [SFO, ATL], [ATL, ICN], [ATL,SFO]] [ICN, ATL, ICN, SFO, ATL, SFO] programmers.co.kr 풀이 처음엔 단순한 문제인줄 알고 DFS를 사용하지 않고 풀어보려 했다. 내가 생각한 방식은 이러했다. 출발점이 ICN인 것들 추출해서 도착점 알파벳 순으로 앞서는 것은 선택한다. 1에서 선택한 경로의 도착점이 출발점인 것을 골라 알파벳순으로 비교하고 선택하는 과정을 반복한다. 그런데 문제는 위와 같은 방법으로 풀이했을 때 반례가 존재한다는 것이다. [["ICN","JFK"],["ICN","..
백트래킹 알고리즘을 우리말로 하면 '퇴각검색'이라고 할 수 있다. 그렇다면 뭐가 퇴각이라는 걸까? 이에 대한 설명은 좀 더 미뤄두도록 하자. 위키피디아의 정의를 찾아보면 아래와 같다. “Backtracking is a general algorithm for finding all (or some) solutions to some computational problems, notably constraint satisfaction problems…” 중요한 것은 마지막 부분인데 CSP(Constraint Satisfaction Problems)에 적용한다는 것이다. 그럼 CSP가 뭘까? 말그대로 특정 조건을 만족하도록 하는 문제를 말한다. 이러한 CSP의 정의를 백트래킹과 연관지어 생각해보면 백트래킹이란 "조..
문제 https://www.acmicpc.net/problem/2580 2580번: 스도쿠 스도쿠는 18세기 스위스 수학자가 만든 '라틴 사각형'이랑 퍼즐에서 유래한 것으로 현재 많은 인기를 누리고 있다. 이 게임은 아래 그림과 같이 가로, 세로 각각 9개씩 총 81개의 작은 칸으로 이루어진 정사각형 판 위에서 이뤄지는데, 게임 시작 전 몇 몇 칸에는 1부터 9까지의 숫자 중 하나가 쓰여 있다. 나머지 빈 칸을 채우는 방식은 다음과 같다. 각각의 가로줄과 세로줄에는 1부터 9까지의 숫자가 한 번씩만 나타나야 한다. 굵은 선으로 구분되어 있는 3 www.acmicpc.net 생각의 흐름 사실 이 문제는 브루트 포스 알고리즘이라기보단 백트래킹 알고리즘을 사용한다고 보는 것이 맞다. zero리스트에는 0의 위..