일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 알고리즘
- 중복순열
- 파티션 크기 조정
- 자바
- 에라토스테네스의채
- 백준13458
- 볼륨 만들기
- 자바 코테
- 코테
- BFS
- D드라이브생성
- 백준15652
- 완탐
- 정올 1620
- 재귀함수
- 백준2251
- 중복조합
- java
- 완전탐색
- 전화번호속의암호
- 알고리즘개념
- 백준
- 순열
- 코테준비
- N과M
- 23288
- 삼성역테
- 정보처리기사
- Bfs와DFS
- 주사위굴리기2
- Today
- Total
목록알고리즘 (119)
뚱땅뚱땅
www.acmicpc.net/problem/1759 1759번: 암호 만들기 첫째 줄에 두 정수 L, C가 주어진다. (3 ≤ L ≤ C ≤ 15) 다음 줄에는 C개의 문자들이 공백으로 구분되어 주어진다. 주어지는 문자들은 알파벳 소문자이며, 중복되는 것은 없다. www.acmicpc.net 풀이 조합으로 모든 경우의 수를 구해서 풀면 된다. public class BOJ_1759 { static int L, C;// L: 선택해야 하는 알파벳 수, C: 선택 가능한 알파벳 수 static char[] alpha; static StringBuilder sb = new StringBuilder(); public static void main(String[] args) throws IOException { ..
www.acmicpc.net/problem/15900 15900번: 나무 탈출 평소에 사이가 좋지 않던 성원이와 형석이가 드디어 제대로 한 판 붙으려고 한다. 성원이와 형석이 둘과 모두 똑같이 친한 인섭이가 대결 종목을 정해 가져왔다. 바로 '나무 탈출' 이라는 보드게 www.acmicpc.net 풀이 게임 진행 순서가 성원- 형석 - 성원 -형석 -...이므로 성원이는 짝수번 순서에 게임을 하고, 형석이는 홀수번 째에 게임을 한다. (0번부터 수를 센다고 했을 때) 따라서 leaf 노드들에서 root까지의 간선 합이 짝수가 되면 성원이는 지고, 홀수가 되면 이긴다. 처음 문제를 풀 때는 leaf 노드에서 시작해서 root까지 이동하면서 bfs 탐색했는데, 시간 초과였다. 그래서 root->leaf 노드..
www.acmicpc.net/problem/11725 11725번: 트리의 부모 찾기 루트 없는 트리가 주어진다. 이때, 트리의 루트를 1이라고 정했을 때, 각 노드의 부모를 구하는 프로그램을 작성하시오. www.acmicpc.net 풀이 1. BFS public class BOJ_11725 { public static void main(String[] args) throws NumberFormatException, IOException { BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st; int N = Integer.parseInt(in.readLine()); // 인접리스트 만들기 A..
www.acmicpc.net/problem/16948 16948번: 데스 나이트 게임을 좋아하는 큐브러버는 체스에서 사용할 새로운 말 "데스 나이트"를 만들었다. 데스 나이트가 있는 곳이 (r, c)라면, (r-2, c-1), (r-2, c+1), (r, c-2), (r, c+2), (r+2, c-1), (r+2, c+1)로 이동할 수 있다. 크 www.acmicpc.net 풀이 BFS 문제다. 큐에다가 이동거리를 확인할 수 있도록 좌표와 이동거리가 포함된 배열을 넣도록 했다. 처음에 visited 처리를 아래 주석의 위치에다가 했다가 메모리 초과가 나서 큐에 삽입하는 시점으로 바꿨더니 문제가 풀렸다. 여기서 주의해야 할 케이스는 시작점과 목표점이 동일할 때이다. 답을 0으로 먼저 처리 안하고 저 방식대..
www.acmicpc.net/problem/3184 3184번: 양 첫 줄에는 두 정수 R과 C가 주어지며(3 ≤ R, C ≤ 250), 각 수는 마당의 행과 열의 수를 의미한다. 다음 R개의 줄은 C개의 글자를 가진다. 이들은 마당의 구조(울타리, 양, 늑대의 위치)를 의미한다. www.acmicpc.net 내 풀이 bfs 함수에서 for문으로 4방 탐색 안하고 while 문에서 x,y를 업데이트하는 식으로 했는데 틀렸다! for 문으로 4방 탐색하는게 안전한 듯 하다. public class BOJ_3184 { static int[] dx = { 0, 1, 0, -1 }; static int[] dy = { 1, 0, -1, 0 }; static int R, C; static char[][] matr..