Algorithm/문제 풀이62 [알고리즘] 암호 만들기 (백준 1759번) 1759번: 암호 만들기 첫째 줄에 두 정수 L, C가 주어진다. (3 ≤ L ≤ C ≤ 15) 다음 줄에는 C개의 문자들이 공백으로 구분되어 주어진다. 주어지는 문자들은 알파벳 소문자이며, 중복되는 것은 없다. www.acmicpc.net 브루트 포스 문제이며 상당히 자주 볼 수 있는 문제의 유형이다. (물론 난이도가 낮아서 코딩 테스트에선 자주 안 나올 것 같다) 만들 수 있는 조합의 문자열을 DFS를 통한 완전탐색으로 찾아내는 케이스이다. 조합으로 계산해봤을 때 C가 맥스인 15가 되더라도 문자 하나가 정해지면 그 뒤에 올 수 있는 문자들의 범위는 계속해서 줄어들게 되기 때문에 시간복잡도가 크게 증가하지 않는다. Solution 입력받은 알파벳들을 사전식으로 오름차순 정렬한다. L글자를 구성가능한 .. 2020. 9. 27. [알고리즘] 인구 이동 (백준 16234번) 16234번: 인구 이동 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모�� www.acmicpc.net 삼성 기출 문제이다. 예전에 한 번 풀어본 적이 있는 문제이고 시뮬레이션 + 그래프 탐색 문제다. BFS 혹은 DFS 탐색을 하되 몇 번 탐색하느냐를 출력해야한다. Solution 로직 자체는 어려울 것이 없다. 인구 이동이 최대 2000번 이하라고 했으니 2000번까지만 반복문을 돌리고 그 안에서 BFS 혹은 DFS로 탐색을 하는데 이 때 한 번의 탐색동안 연결되는 덩어리가 한 연합이 된다. 그렇게 (0, 0) ~ (N - 1, N - 1) 까.. 2020. 9. 27. [알고리즘] 주사위 굴리기 (백준 14499번) 14499번: 주사위 굴리기 첫째 줄에 지도의 세로 크기 N, 가로 크기 M (1 ≤ N, M ≤ 20), 주사위를 놓은 곳의 좌표 x y(0 ≤ x ≤ N-1, 0 ≤ y ≤ M-1), 그리고 명령의 개수 K (1 ≤ K ≤ 1,000)가 주어진다. 둘째 줄부터 N개의 줄에 지도 www.acmicpc.net solved.ac 기준 골드5 문제로 시뮬레이션 문제인데 예전에 풀었을 때는 내가 실력이 별로여서 그런지 모르겠지만 생각을 좀 많이 하고 풀었었는데 이번엔 금방 풀렸다. 사실 그리 어려운 문제도 아니다. 주사위를 어떻게 표현할 것인가가 관건 Solution 주사위는 2차원 배열로 구현했다. 이런 큐브 굴리기 문제는 배열로 구현해서 어느정도 하드코딩 느낌으로 해야되는 것 같다. 1. 전역 변수 sta.. 2020. 9. 23. [알고리즘] 어른 상어 (백준 19237번) 19237번: 어른 상어 첫 줄에는 N, M, k가 주어진다. (2 ≤ N ≤ 20, 2 ≤ M ≤ N2, 1 ≤ k ≤ 1,000) 그 다음 줄부터 N개의 줄에 걸쳐 격자의 모습이 주어진다. 0은 빈칸이고, 0이 아닌 수 x는 x번 상어가 들어있는 칸을 의미 www.acmicpc.net 시뮬레이션으로 악명 높은 삼성 기출 문제다. 삼성은 맵 위에 물체들이 동시에 움직이는 시뮬레이션 문제를 좋아하는 것 같다. 저번에도 몇 번 삼성 익스퍼트 아카데미에서 비슷한 부류의 문제를 본 적이 있다. 각 물체들의 동작이 서로 비동기적으로 일어나는 것을 표현해줘야 하기에 생각보다 어렵다. Solution 1. 전역 변수들 lateinit var map : Array lateinit var sharkList : List.. 2020. 9. 22. 이전 1 ··· 5 6 7 8 9 10 11 ··· 16 다음