일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 완전 탐색
- 백트래킹
- BFS
- 재귀
- 이분 탐색
- 분할 정복
- 크루스칼
- lis
- 메모리풀
- dfs
- BeautifulSoup
- 그리디
- Knapsack
- 큐
- 빠른 입출력
- 링크드리스트
- SSAFY
- MST
- 문자열
- 피보나치 수
- 세그먼트 트리
- 중복 순열
- DP
- 클래스
- 우선순위 큐
- 조합
- 스택
- 순열
- 시뮬레이션
- 비트마스크
- Today
- Total
목록중복 순열 (4)
작심 24/7
13460번: 구슬 탈출 2 첫 번째 줄에는 보드의 세로, 가로 크기를 의미하는 두 정수 N, M (3 ≤ N, M ≤ 10)이 주어진다. 다음 N개의 줄에 보드의 모양을 나타내는 길이 M의 문자열이 주어진다. 이 문자열은 '.', '#', 'O', 'R', 'B' www.acmicpc.net ▷다른 방식 풀이 보러가기 최대 10번 움직여서 빨간 구슬을 빼내야 하므로 상, 하, 좌, 우로 기울이는 순서를 1~10 까지 중복 순열로 지정한다. 대신, 같은 방향이 연속되지 않게 한다. ex) 1번 움직일 경우 가능한 순서 : 1) 상(↑) 2) 하(↓) 3) 좌(←) 4) 우(→) 2번 움직일 경우 가능한 순서 : 1) 상(↑) 하(↓) 2) 상(↑) 좌(←) 3) 상(↑) 우(→) 4) 하(↓) 상(↑) ..
SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1. findTop 0열부터 W - 1열까지 돌면서 0행부터 탐색하며 맨 위에 있는 벽돌을 찾아내는 함수이다. 이 행위를 재귀로 N번 반복하면 N개 중 N개를 중복 포함에서 뽑는 중복 순열이 된다. 맨 위에 있는 벽돌을 찾아내면 거기에 구슬을 떨어뜨리고 다음 동작들을 (연쇄 벽돌 없애기, 벽돌 재 정렬하기) 실행한 뒤 돌아와서 재귀로 구슬을 떨어뜨릴 다음 위치를 찾는다. 2. findChain 구슬을 떨어뜨린 벽돌을 기준으로 연쇄된 모든 벽돌을 찾아 0으로 바꿔주는 함수이다. 상하좌우를 DFS 탐색하며 명중된 벽돌들을 찾아서 큐에 넣어준 뒤 0으로 바꿔주고 다음 ..
17825번: 주사위 윷놀이 첫째 줄에 주사위에서 나올 수 10개가 순서대로 주어진다. www.acmicpc.net 주사위를 던질 때마다 선택할 수 있는 말은 4가지이고 주사위는 10번 던지므로 말을 이동하는 총 경우의 수는 4^10가지가 된다. (중복 순열) 게임판에서 말이 어떤 파란색 칸으로 이동하는지에 따라 경로가 달라진다. 1. 파란색 칸을 한 번도 밟지 않는 경우 (Default) 2. 1번 경로로 가다가 첫 번째 파란색 칸을 밟는 경우 3. 1번 경로로 가다가 두 번째 파란색 칸을 밟는 경우 4. 1번 경로로 가다가 세 번째 파란색 칸을 밟는 경우 이 네 가지 경우에 따른 경로를 이차원 배열 board에 저장해준다. 말을 이동시킬 때 같은 칸에 두 개 이상의 말이 있으면 안 되므로 A 말을 이..
15651번: N과 M (3) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net N개 중에 중복 포함, 순서를 고려하여 M개를 뽑는 중복 순열 문제이다. 순열과 다른 점은 중복을 체크해줄 필요 없기 때문에 check배열만 없애면 된다. 자바는 Scanner + print 써서 그냥 제출하니까 시간 초과 나길래 Scanner 대신 BufferedReader를 썼더니 또 시간 초과됐다 (자바 싫어) 찾아보니 print가 시간이 꽤 오래 걸린다 하더라 그래서 출력 부분을 StringBuilder로 넣어준 뒤 마지막에 한 번만 출력시켰더니 통과 <..