태그: Algorithm

0

백준 12100 2048 easy

백준 2048 문제는 2048 게임을 간단하게 시뮬레이션 해보는 문제이다. -> 왼쪽, 오른쪽, 위, 아래의 방향으로 움직였을 경우 숫자들이 합쳐지는 것만 구현한다면 dfs로 그리 어렵지 않게 풀 수 있는 문제이다. 단순히 생각대로 위, 아래, 오른쪽, 왼쪽 함수를 모두 만들어 풀어 코드가 지저분하고 긴 감이 없지 않아 있다. 123456789101

0

백준 13459 째로탈출

백준 째로 탈출은 10번이라는 횟수의 제한 안에 파란 구슬을 빼지 않으면서 빨간 구슬을 뺄 수 있는지 시뮬레이션을 해보는 문제이다. bfs를 통해서 현재 빨간 구슬, 파란구슬의 위치에 대해 상,하, 좌,우 움직인 좌표가 어디인지를 확인해 나가면 풀 수 있는 문제이다. 생각보다 구현도 짜증나고 상,하,좌,우 움직였을 때 일단 한쪽으로 구슬을 몰아 넣은 다

0

백준 14500 테트로미노

백준 테트로미노는 n * m 배열에 적혀 있는 숫자에 도형을 넣은뒤 도형이 놓여지는 숫자들의 합이 최대로 되게 하는 문제이다. 이 문제는 단순히 도형 하나씩을 넣어보면 되기 때문에 빈틈없이 꽉 채우는 타일링 문제보다 쉬운 것 같다. 먼저 0,0을 기준으로 도형의 상대적인 좌표들로 5개의 도형을 표현 한뒤, rotate, 대칭한 도형들에 대하여 모든 좌

0

백준 1700 멀티탭 스케줄링

분류는 그리디 알고리즘이며, 문제 해결 절차는 이렇습니다. 1. 내가 사용할 아이템(장비???)가 꽂혀있는지 확인합니다. 2. 1에서 꽂혀있으면 다음 장비로 넘어갑니다. 3. 1에서 꽂혀있지 않으면 비어있는 포트가 있는지 확인한다. 4. 3에서 빈 포트가 있으면 그냥 꽂는다. 5. 3에서 빈 포트가 없으면 현재 꽂혀 있는 아이템 중에 나중에 가장 늦게 사용

0

백준 5427 불

백준 5427 불은 전형적인 BFS 문제이다. 처음 시작 위치가 주어지고 불이 번질 때 지정된 위치로 탈출 할 수 있는가를 판단하는 문제이다. 사람의 위치를 퍼지게 하기 위한 queue와 불이 퍼지게 하기 위한 위치를 담긴 queue인 2개의 queue를 이용하여 시뮬레이션 하였다. 사실 생각해보니까 queue를 따로 두지 않고 사람, 불에 대한 타입을

0

백준 3190 뱀

백준 3190 뱀은 도스 뱀 게임을 구현하는 문제이다. n*n의 맵이 있다고 가정하고 0,0의 배열의 위치에서 뱀이 시작했을 때 과연 뱀이 몇초후에 죽는지 출력하는 문제이다. 방향 전환 정보와 사과의 위치 정보가 주어지게 되는데 이 뱀을 잘 구현하기 위해서는 list 자료구조를 이용하면 쉽게 구현이 가능하다. list를 통해서 head와 tail에