문제 링크문제스타트링크에서 판매하는 어린이용 장난감 중에서 가장 인기가 많은 제품은 구슬 탈출이다. 구슬 탈출은 직사각형 보드에 빨간 구슬과 파란 구슬을 하나씩 넣은 다음, 빨간 구슬을 구멍을 통해 빼내는 게임이다.보드의 세로 크기는 N, 가로 크기는 M이고, 편의상
문제 링크2048 게임은 4×4 크기의 보드에서 혼자 즐기는 재미있는 게임이다. 이 링크를 누르면 게임을 해볼 수 있다.이 게임에서 한 번의 이동은 보드 위에 있는 전체 블록을 상하좌우 네 방향 중 하나로 이동시키는 것이다. 이때, 같은 값을 갖는 두 블록이 충돌하면
문제 링크문제 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다.게임은 NxN 정사각 보드위에서 진행되고, 몇몇 칸에는 사과가 놓여
1. 문제 문제 링크 문제 총 N개의 시험장이 있고, 각각의 시험장마다 응시자들이 있다. i번 시험장에 있는 응시자의 수는 Ai명이다. 감독관은 총감독관과 부감독관으로 두 종류가 있다. 총감독관은 한 시험장에서 감시할 수 있는 응시자의 수가 B명이고, 부감독관은 한
문제 링크가장 처음에 주사위에는 모든 면에 0이 적혀져 있다.주사위는 지도 위에 윗 면이 1이고, 동쪽을 바라보는 방향이 3인 상태로 놓여져있다.주사위를 굴렸을 때, 이동한 칸에 쓰여 있는 수가 0이면, 주사위의 바닥면에 쓰여 있는 수가 칸에 복사된다. 0이 아닌 경우
문제 링크테트로미노를 회전, 대칭시킬 수 있다.회전과 대칭시켜서 만들 수 있는 모든 경우의 테트로미노를놓을 수 있는 모든 위치에 두어보면 됩니다.이런 문제는 보통 만들 수 있는 테트로미노를 테이블로 정의하고반복문으로 모든 위치를 탐색한 다음 종이 위에 테트로미노를 올릴
문제 링크문제 설명상담원으로 일하고 있는 백준이는 퇴사를 하려고 한다.오늘부터 N+1일째 되는 날 퇴사를 하기 위해서, 남은 N일 동안 최대한 많은 상담을 하려고 한다.백준이는 비서에게 최대한 많은 상담을 잡으라고 부탁을 했고, 비서는 하루에 하나씩 서로 다른 사람의
문제 링크벽은 3개를 세울 수 있다.DFS + BFS가 결합된 문제입니다.딱히 풀이랄 것도 없이 시키는 대로 구현하면 되는 문제입니다.백트래킹으로 모든 경우의 벽을 세웁니다.벽 3개를 세웠을 때 시뮬레이션을 진행할 map을 복사합니다.BFS로 바이러스를 퍼뜨립니다.안전
문제 링크로봇은 시계 반대 방향으로 회전한다.네 방향 모두 청소가 이미 되어있거나 벽이면서, 뒤쪽 방향이 벽이라 후진도 할 수 없는 경우에는 작동을 멈춘다.(기저 사례)문제에서 나온 설명 그대로 구현하면 됩니다.문제에서 요구하는 로봇의 행동은 작동을 멈출 때까지 같은
문제 링크식의 계산은 연산자 우선 순위를 무시하고 앞에서부터 진행한다.딱 봐도 DFS를 이용해서 모든 경우의 계산을 해본 다음 그 중에 최적의 답을 찾아내는 문제입니다.1번 조건 덕분에연산자 순열을 만들어낸뒤 기저 사례에서 계산하는 방식이 아니라각 상태 공간에서 계산을
문제 링크DFS를 이용해서 모든 팀원 조합을 구한 다음그 차이의 최솟값을 구하는 문제입니다.보통 DFS를 설계할 때 답을 재귀호출하면서 만들어나갈지, 답을 기저사례에서 계산할지 고민을 하는데이 문제의 경우 후자의 방법을 이용하는 게 좋습니다.왜냐하면 모든 팀원 조합을
문제 링크경사로는 높이 1, 길이 L이다.경사로는 낮은 칸에 놓으며, L개의 연속된 칸에 경사로의 바닥이 모두 접해야 한다.낮은 칸과 높은 칸의 높이 차이는 1이어야 한다.경사로를 놓을 낮은 칸의 높이는 모두 같아야 하고, L개의 칸이 연속되어 있어야 한다.위에서 정리
임의의 톱니바퀴가 회전할 때 맞닿은 다른 톱니바퀴의 톱니와 극이 다르면 반대 방향으로 회전하고 같으면 회전하지 않는다.주사위 굴리기저번에 포스팅한 문제와 마찬가지로 현실 세계의 복잡한 문제를 컴퓨터가 해석할 수 있게끔단순화를 하는 게 중요한 문제입니다.이런 문제는 무작
CCTV는 감시할 수 있는 방향에 있는 칸 전체를 감시할 수 있다.CCTV는 벽을 통과할 수 없다.CCTV는 가로, 세로 방향으로만 감시할 수 있다.CCTV끼리는 통과할 수 있다.DFS를 활용해서 CCTV가 감시하는 모든 경우의 수를 탐색하는 문제입니다.주먹구구식으로
가로선을 연속해서 설치할 수 없다.가로선을 4개 이상 설치할 수 없다.사다리를 설치하는 모든 경우의 수를 탐색해서모든 세로선이 매칭되는지 확인하는 문제입니다.계획을 세우고 차근차근 하나씩 구현해 나갑시다.계획 1 - 사다리 가로선의 설치 정보를 2차원 boolean배열
문제 링크이 문제는 커브가 생성되는 규칙을 찾아내는 문제입니다.단순히 머릿속에서 생각하지말고 직접 종이에 써가며 규칙을 찾는 방법이 제일 빠릅니다.각설하고, 문제에서 제시한 예시를 기반으로 제가 찾은 규칙은 이렇습니다.이전 세대를 뒤에서부터 반시계 방향으로 회전시킨 방
문제 링크DFS를 이용해서 폐업시키지 않을 치킨집을 고르는 경우의 수를 모두 만든 다음에각 경우마다 치킨 거리를 계산해서 최소값을 반환하게 만들면 됩니다.차근차근 구현해보겠습니다.계획 1 - 집과 치킨집의 좌표를 각각 리스트에 담습니다.치킨 거리를 계산하려면 집과 치킨
문제 링크문제 설명N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 Ar명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모든 나라는 1×1 크기이기 때문에, 모든 국경선은 정사각
문제 링크설명부동산 투자로 억대의 돈을 번 상도는 최근 N×N 크기의 땅을 구매했다. 상도는 손쉬운 땅 관리를 위해 땅을 1×1 크기의 칸으로 나누어 놓았다. 각각의 칸은 (r, c)로 나타내며, r은 가장 위에서부터 떨어진 칸의 개수, c는 가장 왼쪽으로부터 떨어진
문제 링크설명N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다.아기 상어와 물고기는 모두 크기를 가지고 있고, 이 크기는 자연수이다. 가장 처음에 아기 상어의
문제 링크설명미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사과는 뛰어난 코딩 실력을 이용해 각 칸 (r, c)에 있는 미세먼지의
문제 링크설명낚시왕이 상어 낚시를 하는 곳은 크기가 R×C인 격자판으로 나타낼 수 있다. 격자판의 각 칸은 (r, c)로 나타낼 수 있다. r은 행, c는 열이고, (R, C)는 아래 그림에서 가장 오른쪽 아래에 있는 칸이다. 칸에는 상어가 최대 한 마리 들어있을 수
문제 링크설명크기가 3×3인 배열 A가 있다. 배열의 인덱스는 1부터 시작한다. 1초가 지날때마다 배열에 연산이 적용된다.R 연산: 배열 A의 모든 행에 대해서 정렬을 수행한다. 행의 개수 ≥ 열의 개수인 경우에 적용된다.C 연산: 배열 A의 모든 열에 대해서 정렬을
문제 링크설명인체에 치명적인 바이러스를 연구하던 연구소에 승원이가 침입했고, 바이러스를 유출하려고 한다. 바이러스는 활성 상태와 비활성 상태가 있다. 가장 처음에 모든 바이러스는 비활성 상태이고, 활성 상태인 바이러스는 상하좌우로 인접한 모든 빈 칸으로 동시에 복제되며
문제 링크설명재현시의 시장 구재현은 지난 몇 년간 게리맨더링을 통해서 자신의 당에게 유리하게 선거구를 획정했다. 견제할 권력이 없어진 구재현은 권력을 매우 부당하게 행사했고, 심지어는 시의 이름도 재현시로 변경했다. 이번 선거에서는 최대한 공평하게 선거구를 획정하려고
문제 링크설명재현이는 주변을 살펴보던 중 체스판과 말을 이용해서 새로운 게임을 만들기로 했다. 새로운 게임은 크기가 N×N인 체스판에서 진행되고, 사용하는 말의 개수는 K개이다. 말은 원판모양이고, 하나의 말 위에 다른 말을 올릴 수 있다. 체스판의 각 칸은 흰색, 빨
문제 링크설명반지름이 1, 2, ..., N인 원판이 크기가 작아지는 순으로 바닥에 놓여있고, 원판의 중심은 모두 같다. 원판의 반지름이 i이면, 그 원판을 i번째 원판이라고 한다. 각각의 원판에는 M개의 정수가 적혀있고, i번째 원판에 적힌 j번째 수의 위치는 (i,
문제 링크설명주사위 윷놀이는 다음과 같은 게임판에서 하는 게임이다.처음에는 시작 칸에 말 4개가 있다.말은 게임판에 그려진 화살표의 방향대로만 이동할 수 있다. 말이 파란색 칸에서 이동을 시작하면 파란색 화살표를 타야 하고, 이동하는 도중이거나 파란색이 아닌 칸에서 이
문제 링크설명유현이가 새 집으로 이사했다. 새 집의 크기는 N×N의 격자판으로 나타낼 수 있고, 1×1크기의 정사각형 칸으로 나누어져 있다. 각각의 칸은 (r, c)로 나타낼 수 있다. 여기서 r은 행의 번호, c는 열의 번호이고, 행과 열의 번호는 1부터 시작한다.
문제 링크설명캐슬 디펜스는 성을 향해 몰려오는 적을 잡는 턴 방식의 게임이다. 게임이 진행되는 곳은 크기가 N×M인 격자판으로 나타낼 수 있다. 격자판은 1×1 크기의 칸으로 나누어져 있고, 각 칸에 포함된 적의 수는 최대 하나이다. 격자판의 N번행의 바로 아래(N+1
문제 링크설명<그림 1>과 같이 정사각형 모양을 한 다섯 종류의 색종이가 있다. 색종이의 크기는 1×1, 2×2, 3×3, 4×4, 5×5로 총 다섯 종류가 있으며, 각 종류의 색종이는 5개씩 가지고 있다.<그림 1>색종이를 크기가 10×10인 종이 위에 붙
문제 링크설명⚾는 9명으로 이루어진 두 팀이 공격과 수비를 번갈아 하는 게임이다. 하나의 이닝은 공격과 수비로 이루어져 있고, 총 N이닝 동안 게임을 진행해야 한다. 한 이닝에 3아웃이 발생하면 이닝이 종료되고, 두 팀이 공격과 수비를 서로 바꾼다.두 팀은 경기가 시작
문제 링크역시 전형적인 삼성 문제 아니겠습니까?K번 배열을 돌리는 경우에 대해 모든 순열을 탐색하고 그 중 배열의 최솟값을 찾으면 됩니다.계획1 - K번 배열을 돌리는 모든 경우를 탐색합니다.⚾(https://velog.io/@front/%EB%B0%B1%EC
문제 링크설명백준시의 시장 최백준은 지난 몇 년간 게리맨더링을 통해서 자신의 당에게 유리하게 선거구를 획정했다. 견제할 권력이 없어진 최백준은 권력을 매우 부당하게 행사했고, 심지어는 시의 이름도 백준시로 변경했다. 이번 선거에서는 최대한 공평하게 선거구를 획정하려고
문제 링크문제n개의 서로 다른 양의 정수 a1, a2, ..., an으로 이루어진 수열이 있다. ai의 값은 1보다 크거나 같고, 1000000보다 작거나 같은 자연수이다. 자연수 x가 주어졌을 때, ai + aj = x (1 ≤ i < j ≤ n)을 만족하는 (
문제 링크설명4개의 기호 ‘(’, ‘)’, ‘’, ‘’를 이용해서 만들어지는 괄호열 중에서 올바른 괄호열이란 다음과 같이 정의된다.한 쌍의 괄호로만 이루어진 ‘()’와 ‘\[]’는 올바른 괄호열이다. 만일 X가 올바른 괄호열이면 ‘(X)’이나 ‘X’도 모두 올바른 괄호
문제 링크설명지구 온난화로 인하여 북극의 빙산이 녹고 있다. 빙산을 그림 1과 같이 2차원 배열에 표시한다고 하자. 빙산의 각 부분별 높이 정보는 배열의 각 칸에 양의 정수로 저장된다. 빙산 이외의 바다에 해당되는 칸에는 0이 저장된다. 그림 1에서 빈칸은 모두 0으로
문제 링크설명구사과와 친구들이 확장 게임을 하려고 한다. 이 게임은 크기가 N×M인 격자판 위에서 진행되며, 각 칸은 비어있거나 막혀있다. 각 플레이어는 하나 이상의 성을 가지고 있고, 이 성도 격자판 위에 있다. 한 칸 위에 성이 두 개 이상인 경우는 없다.게임은 라
문제 링크설명농부 존은 최근에 N\*N개의 방이 있는 거대한 헛간을 새로 지었다. 각 방은 (1, 1)부터 (N,N)까지 번호가 매겨져있다(2≤N≤100). 어둠을 무서워하는 암소 베시는 최대한 많은 방에 불을 밝히고 싶어한다.베시는 유일하게 불이 켜져있는 방인 (1,
문제 링크설명In Programming Land, there are several pathways called Philosopher’s Walks for philosophers to have a rest. A Philosopher’s Walk is a pathway i
문제 링크설명총 25명의 여학생들로 이루어진 여학생반은 5\*5의 정사각형 격자 형태로 자리가 배치되었고, 얼마 지나지 않아 이다솜과 임도연이라는 두 학생이 두각을 나타내며 다른 학생들을 휘어잡기 시작했다. 곧 모든 여학생이 ‘이다솜파’와 ‘임도연파’의 두 파로 갈라지
문제 링크설명길고 길었던 겨울이 끝나고 BOJ 마을에도 봄이 찾아왔다. BOJ 마을에서는 꽃을 마을 소유의 정원에 피우려고 한다. 정원은 땅과 호수로 이루어져 있고 2차원 격자판 모양이다.인건비 절감을 위해 BOJ 마을에서는 직접 사람이 씨앗을 심는 대신 초록색 배양액
문제 링크설명두 마리의 백조가 호수에서 살고 있었다. 그렇지만 두 마리는 호수를 덮고 있는 빙판으로 만나지 못한다.호수는 행이 R개, 열이 C개인 직사각형 모양이다. 어떤 칸은 얼음으로 덮여있다.호수는 차례로 녹는데, 매일 물 공간과 접촉한 모든 빙판 공간은 녹는다.
문제 링크설명뿌요뿌요의 룰은 다음과 같다.필드에 여러 가지 색깔의 뿌요를 놓는다. 뿌요는 중력의 영향을 받아 아래에 바닥이나 다른 뿌요가 나올 때까지 아래로 떨어진다.뿌요를 놓고 난 후, 같은 색 뿌요가 4개 이상 상하좌우로 연결되어 있으면 연결된 같은 색 뿌요들이 한
문제 링크평화롭게 문제를 경작하며 생활하는 BOJ 마을 사람들은 더 이상 2차원 미로에 흥미를 느끼지 않는다. 2차원 미로는 너무나 쉽게 탈출이 가능하기 때문이다. 미로를 이 세상 그 누구보다 사랑하는 준현이는 이런 상황을 매우 안타깝게 여겨 아주 큰 상금을 걸고 BO
문제 링크일단 지우는 모두 다른 숫자를 내서 이겨야하기 때문에k > n이면 볼 것도 없이 정답은 0입니다.k번 이겨야 하는데 가위바위보 종류는 k보다 적으면 비둘기집 원리에 의해 적어도 한 번 같은 종류의 숫자를 내기 때문입니다.그래서 어떻게 풀어야하나?이 문제는 수열
문제 링크특별한 알고리즘은 요구하지 않고오로지 구현력으로 승부를 보는 문제입니다.이런 빡구현 유형은 문제를 단순화하는 부분부터 시작합니다.문제에서는 초록색 보드와 파란색 보드 둘 다 신경써야 합니다.같은 로직인데 방향만 다르다고 따로 만드는 짓은 비효율적이고 버그가 나
문제 링크방에서 방으로 이동하는 거리를 모두 구해서 dist배열에 저장더러운 방을 청소하러 가는 순서의 모든 경우의 수 만들기청소하러 가기이렇게 세 단계로 나누어 풀 수 있습니다.
문제 링크전형적인 삼성 기출 문제 스타일입니다.늘 하던대로 해보겠습니다.1\. 필요한 자료구조 선언my, mx: 차례대로 물고기가 회전하는 방향fishs: 물고기의 정보를 담는 2차원 배열fishs0: 0번째 물고기의 y좌표fishs0: 0번째 물고기의 x좌표fishs
문제 링크상어 시리즈의 마지막 문제입니다.특정 알고리즘은 요구하지 않고 상어의 움직임만 구현하면 됩니다.sharkInfo: 상어의 현재 정보를 저장하는 2차원 배열sharkInfo\[1]\[0]: 1번 상어의 y좌표sharkInfo\[1]\[1]: 1번 상어의 x좌표s
1. 문제 문제 링크 2. 풀이 BFS를 이용해 곧이 곧대로 시뮬레이션 하면 풀리는 문제입니다. 전체적인 계획은 이와 같습니다. BFS를 이용해 가장 가까운 승객을 찾습니다. BFS를 이용해 승객의 목적지까지 이동합니다. 위 로직을 m번 반복하면 답을
문제 링크문제는 단순한 구현 문제입니다.이 문제의 구현을 좀 더 간단히 할 수 있는 방법은 무엇이 있을까요?컨베이어 벨트의 각 칸들은 순환합니다.순환하는 움직임을 구현하기 좋은 자료구조는 무엇이 있을까요?바로 큐, 덱 떠오르셔야 합니다.근데 이 문제에서는 덱이 좀 더
문제 링크특정 알고리즘 지식은 요구하지 않고, 단순 구현력으로 승부보는 문제입니다.하나씩 차근차근 구현해봅시다.파이어볼은 tuple로 정의했고 순서대로질량속도방향움직였는지 여부의 정보를 가지게 했습니다.파이어볼들은 서로 같은 좌표에 있을 수 있기 때문에격자를 이차원 큐
문제 링크역시 단순한 구현 문제입니다.이런 유형은 테이블을 정의하면 쉽게 해결할 수 있습니다.문제에 나온 그림과 똑같이차례대로 서, 남, 동, 북쪽 방향으로 토네이도가 이동할 때,흩날려 이동할 상대 좌표와 흩날릴 양의 비율을 정의합니다.토네이도는 안쪽에서부터 방향을 회
문제 링크BFS와 단순 구현력으로 승부보는 문제입니다.배열을 회전하기얼음 녹이기를 Q번 반복하고남은 얼음의 합과 제일 큰 덩어리를 출력하면 됩니다.배열 회전 코드저는 재귀로 구현했습니다.반복문으로 구현해도 되지만 재귀적으로 생각하니까 더 깔끔하고 구현하기 더 편했습니다
문제 링크백트래킹을 이용해 괄호를 치는 모든 경우의 수를 다 만들어본 후,수식을 계산해서 최댓값을 출력하면 되는 문제입니다.예제 2번의 수식인 8\*3+5+2를 예로 문제를 설계해봅시다.일단 n에 대해서 숫자의 개수와 연산자의 개수는 어떻게 정의될까요?연산자의 개수:
문제 링크MST 알고리즘을 통해 푸는 문제입니다.전체적인 단계는 다음과 같습니다.BFS를 이용해 섬 나누기섬과 섬을 잇는 다리를 모두 구해서 인접리스트에 담기프림 알고리즘으로 최소 비용 구하기비슷한 문제로는 프로그래머스 - 지형 이동이 있습니다.
문제 링크경우의 수를 만드는 과정이 많았을 뿐, 폭탄을 만드는 구현은 간단한 문제였습니다.전체 과정은 이와 같습니다.재료를 뽑는 모든 순열을 만듭니다.재료를 돌리는 모든 경우의 수를 만듭니다.재료를 배치하는 모든 경우의 수를 만듭니다.폭탄을 만듭니다.
문제 링크이항 계수를 이용해서 푸는 문제입니다.a의 입장에서 생각해서 접근해 보겠습니다.a는 n개, z는 m개가 있다면 (n + m)Cn이 됩니다.즉 n + m개에서 n개를 뽑는 경우의 수입니다.왜냐하면 n + m개에서 n개의 a를 배치하는 경우의 수와 동일하기 때문입
문제 링크전형적인 parametric search 문제입니다.반복문으로 l - 1부터 1까지 간격을 설정한 다음, 그 간격으로 휴계소를 세워서 m개를 세울 수 있다면 답이 됩니다.즉 특정 간격 이하부터는 m개 이상으로 세울 수 있고 간단하게 그래프로 그려보면 아래와 같
문제 링크(a, b)를 (A전봇대 위치, B전봇대 위치)라 명칭하고, A전봇대 입장에서 생각해봅시다.전깃줄이 꼬이지 않으려면 어떻게 연결돼야 할까요?꼬이지 않는 경우 (1, 1), (2, 3) 두 번째 B전봇대 위치가 이전인 첫 번째 전깃줄의 B전봇대 위치보다 크기
문제 링크그냥 단순 구현이였습니다.구현 기능의 순서는 이와 같습니다.입력받은 학생 순서대로 조건에 맞게 자리를 배정합니다.만족도를 합산합니다.
문제 링크board를 순회하면서 BFS를 이용해 블록 그룹의 좌표들을 tq에 넣습니다.이전 블록 그룹보다 크거나, 무지개 블록수가 더 많거나, 행과 열이 작다면dq를 tq로 갱신합니다.board순회를 마쳤다면 dq에서 pop하면서 블록을 삭제합니다.이제 함수들을 순서에
문제 링크저는 구름의 좌표들을 queue에 담고queue를 순회하면서 이동하거나, 물을 뿌리는 로직으로 구성했습니다.그냥 시키는대로 하면 되는 구현 문제였습니다.
문제 링크전형적인 삼성 기출 문제 유형의 빡센 구현 문제입니다.하나씩 차근차근 해봅시다.단순히 d방향으로 s만큼 0으로 만들어줍니다.마법사 상어와 토네이도 포스팅에서 설명한 방식입니다.위 규칙대로 맵을 순회하면서 구슬들을 queue에 모읍니다. 2번과 똑같이 안쪽에서부
문제 링크주사위 굴리기 문제에서 BFS만 추가된 문제입니다.주사위 전개도를 갱신하는 로직은 같고, 주사위의 현 위치에서 BFS를 통해 점수와 방향을 갱신하면 됩니다.
문제 링크삼성 기출 문제답게 높은 구현력을 요구하는 문제입니다.근데 뭐 별 거 있습니까? 늘 하던대로 계획을 세우고 하나씩 구현해봅시다.my, mx배열임의의 좌표를 북, 동, 남, 서로 이동할 때 쓰이는 변수rotates배열온풍기의 열기가 퍼져나갈 때 회전을 시켜야하는
문제 링크2차원 백터 배열로 설계했습니다.백터 안에는 물고기가 가지는 방향이 들어갑니다.fishs는 물고기와 상어의 이동을 시뮬레이션 하는 맵이고prepare는 물고기 복제 버그를 준비하는 맵입니다.상어의 이동 경로는 끽해야 64개 밖에 안됩니다.3중 포문으로 shar
1. 문제 링크 우주 탐사선 2. 풀이 플로이드 와샬 + 외판원 순회로 풀었습니다. 1. 플로이드 와샬로 각 행성 사이의 최소 거리를 계산 da는 a행성에서 b행성으로 가는 최소 거리가 저장됩니다. 2. 외판원 순회로 정답 계산 p는 현재 방문하고 있는 행성
내일로 여행플로이드 와샬로 각 도시 사이를 이동할 수 있는 최소 비용을 초기화하고,여행하려는 도시를 순서대로 방문하며 비용을 누적하면 됩니다.자꾸 100%에서 틀려서 "맞왜틀!!" 외치는 중에,질문 검색을 보니 비용을 double로 선언해야 한다고 합니다...그래서 d
밤편지2^1 + 2^2 + 2^3 + ... + 2^(c-1) < 2^c 가 성립합니다.즉, c미만의 번호를 가진 집만 거쳐가야 합니다.'dp\[k]\[i]\[j]는 k이하의 집들만 거쳐가며, i에서 j로 가는 최소 시간' 이라고 정의합시다.그렇다면 dp\[k]\
Ignition1 ~ n 번 정점까지 순서대로 다 점화해보면서, 그 중에 모든 그래프가 다 재가 되는 최소 시간을 구하면 됩니다.최소 시간이려면 당연히 최단 거리 루트를 타는 게 좋으니까 플로이드 와샬도 사용합니다.초기 상태가 이와 같고, S정점에 점화한 상황을 가정합
도망자 원숭이우리가 유념해야할 사항은'멍멍이는 최대로 괴롭힐 수 있는 위치에 존재한다' 입니다.그렇기 때문에 멍멍이가 적게 괴롭힐 수 있는 순서대로 플로이드 와샬을 돌려야합니다.(질문 검색에서 5년 전 해설글을 올려주신 kks227님 감사합니다)