We will find a way, we always have.

-interstellar

구현 4

[백준] 28457번: Every? Only One's Marble - 파이썬

🔈 문제 유틸은 오늘도 혼자 집에 있다. 심심해서 같이 부루마불 게임을 할 사람을 찾아봤지만 아무도 없었다. 그렇게 한 시간, 두 시간... 도저히 참을 수 없었던 유틸은 부루마불 게임을 혼자 할 방법을 생각해 냈다. 혼자 하는 부루마불 게임에 적용되는 규칙은 다음과 같다. 일반 칸은 두 종류다. 도시 칸: 돈을 내고 땅을 사야 하는 칸 황금 열쇠 칸: 특정한 효과가 있는 카드가 발동되는 칸 특수 칸은 네 종류다. 시작 칸: 이 칸에 정확히 멈추거나 지나가게 되면, 월급을 받게 된다. 무인도 칸: 이 칸에 정확히 멈추게 되면, 다음 세 턴 동안 갇히게 된다. 갇혀 있는 동안, 두 주사위를 던졌을 때 눈이 같은 수로 나오면 무인도를 탈출하게 되며 두 주사위를 한 번 더 던져서 나온 수만큼 이동한다. 사회복..

[백준] 23291번: 어항 정리

🔈 문제 마법사 상어는 그동안 배운 마법을 이용해 어항을 정리하려고 한다. 어항은 정육면체 모양이고, 한 변의 길이는 모두 1이다. 상어가 가지고 있는 어항은 N개이고, 가장 처음에 어항은 일렬로 바닥 위에 놓여져 있다. 어항에는 물고기가 한 마리 이상 들어있다. 은 어항 8개가 바닥 위에 놓여있는 상태이며, 칸에 적힌 값은 그 어항에 들어있는 물고기의 수이다. 편의상 어항은 정사각형으로 표현했다. 어항을 한 번 정리하는 과정은 다음과 같이 이루어져 있다. 먼저, 물고기의 수가 가장 적은 어항에 물고기를 한 마리 넣는다. 만약, 그러한 어항이 여러개라면 물고기의 수가 최소인 어항 모두에 한 마리씩 넣는다. 위의 예시의 경우 물고기의 수가 가장 적은 어항에는 물고기가 2마리 있고, 그러한 어항은 2개가 있..

[백준] 2174번: 로봇 시뮬레이션 - 파이썬

🔈 문제 가로 A(1≤A≤100), 세로 B(1≤B≤100) 크기의 땅이 있다. 이 땅 위에 로봇들이 N(1≤N≤100)개 있다. 로봇들의 초기 위치는 x좌표와 y좌표로 나타난다. 위의 그림에서 보듯 x좌표는 왼쪽부터, y좌표는 아래쪽부터 순서가 매겨진다. 또한 각 로봇은 맨 처음에 NWES 중 하나의 방향을 향해 서 있다. 초기에 서 있는 로봇들의 위치는 서로 다르다. 이러한 로봇들에 M(1≤M≤100)개의 명령을 내리려고 한다. 각각의 명령은 순차적으로 실행된다. 즉, 하나의 명령을 한 로봇에서 내렸으면, 그 명령이 완수될 때까지 그 로봇과 다른 모든 로봇에게 다른 명령을 내릴 수 없다. 각각의 로봇에 대해 수행하는 명령은 다음의 세 가지가 있다. 1. L: 로봇이 향하고 있는 방향을 기준으로 왼쪽으..

[알고리즘] 구현

구현이란? 구현(Implementation)이란 머리속에 있는 알고리즘을 소스코드로 바꾸는 과정입니다. 물론 어떤 문제를 풀던 간에 소스코드를 작성하는 과정은 필수이다. 그러나 구현이라고 따로 분류하는 문제들은 '풀이를 떠올리는 것은 쉽지만 소스코드로 옮기기 어려운 문제'를 의미한다. 완전 탐색과 시뮬레이션은 모두 구현이 핵심이 되는 경우가 많다. 완전 탐색은 모든 경우의 수를 주저 없이 다 계산하는 해결 방법을 의미하고, 시뮬레이션은 문제에서 제시한 알고리즘을 한 단계씩 차례대로 직접 수행해야 하는 문제 유형을 의미한다. 이것이 코딩테스트다를 읽고 정리한 내용입니다.