일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 데이터베이스
- 백준
- C++
- 1과목
- python
- 파이썬
- programmers
- SQL
- 스프링
- 프로그래머스
- 정보처리산업기사
- 알고리즘
- 코딩봉사
- 코딩교육봉사
- java
- SW봉사
- 소프티어
- 시나공
- CJ UNIT
- 문제풀이
- 회고
- BFS
- softeer
- kotlin
- 코틀린
- 자바
- 백준알고리즘
- 공부일지
- 백준 알고리즘
- MYSQL
- Today
- Total
목록백트래킹 (2)
JIE0025

✍️ N-QUEENS 크기가 N × N인 체스판 위에 퀸 N개를 서로 공격할 수 없게 놓는 문제 N이 주어졌을때, 퀸을 놓는 방법의 수는 모두 몇개인가? 먼저 퀸을 어디에 놓을지 결정하는 과정 속에서, 해당 위치를 저장할 곳이 필요하다 ✅ rows 배열 1차원으로도 충분히 퀸의 위치를 저장할 수 있다. 체스판의 크기를 N*N이라고 생각했을 때, rows 배열은 N의 크기를 갖는 1차원 배열이다. rows[i] = j i행, j열에 퀸이 놓여있다는 의미 아래 그림을 보면 rows[0] 에 1이 들어있는데, 0행 1열에 퀸을 배치한것이다. 이제 행을 하나씩 증가시키면서 퀸을 배치시켜보자. ✅ put_queen (r) 특정 행 (r)에 퀸을 놓는 함수이다. 하나씩 행을 증가시키면서 놓을수 있는 자리를 만나..

오랜만에 백트래킹을 다시 공부하고 (이전에 공부한거 치고 문제를 잘 못풀었어서..)문제를 풀면 좋을 것 같아서 교내 알고리즘 스터디 2기의 공통문제를 풀기 시작했다. https://www.acmicpc.net/problem/15649 15649번: N과 M (1) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net ✅ 백트래킹 개념 문제 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 입력 첫째 줄에 자연수 N과 M이 주어진다..