Algorithm40 [백준] 12100번 2048 (Easy) (Java) 백준 12100번 2048 (Easy) : https://www.acmicpc.net/problem/12100 12100번: 2048 (Easy) 첫째 줄에 보드의 크기 N (1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 게임판의 초기 상태가 주어진다. 0은 빈 칸을 나타내며, 이외의 값은 모두 블록을 나타낸다. 블록에 쓰여 있는 수는 2보다 크거나 같고, 1024보다 작거나 같은 2의 제곱꼴이다. 블록은 적어도 하나 주어진다. www.acmicpc.net 설명 2048은 블록을 움직이면서 같은 블록들끼리 합치면서 최대한 큰 수를 만들어 내는 게임이다. 실제 게임에서는 이동을 한 번 할 때마다 블록이 추가되지만, 이 문제에서 블록이 추가되는 경우는 없다. 이동은 상하좌우 네 방향으로만 이동.. 2020. 2. 3. [백준] 3190번 뱀 (Java) 백준 3190번 뱀: https://www.acmicpc.net/problem/3190 3190번: 뱀 문제 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임은 NxN 정사각 보드위에서 진행되고, 몇몇 칸에는 사과가 놓여져 있다. 보드의 상하좌우 끝에 벽이 있다. 게임이 시작할때 뱀은 맨위 맨좌측에 위치하고 뱀의 길이는 1 이다. 뱀은 처음에 오른쪽을 향한다. 뱀은 매 초마다 이동을 하는데 다음과 같은 규칙을 따 www.acmicpc.net 아이디어 구현에는 뱀의 몸통 정보를 담은 LinkedList snake와 보드판인 int[] board가 사용된다. 초기에.. 2020. 2. 2. [백준] 17779번 게리맨더링2 (Java) 백준 알고리즘 문제 17779번 "게리맨더링 2" https://www.acmicpc.net/problem/17779에서 문제를 확인할 수 있다. 17779번: 게리맨더링 2 재현시의 시장 구재현은 지난 몇 년간 게리맨더링을 통해서 자신의 당에게 유리하게 선거구를 획정했다. 견제할 권력이 없어진 구재현은 권력을 매우 부당하게 행사했고, 심지어는 시의 이름도 재현시로 변경했다. 이번 선거에서는 최대한 공평하게 선거구를 획정하려고 한다. 재현시는 크기가 N×N인 격자로 나타낼 수 있다. 격자의 각 칸은 구역을 의미하고, r행 c열에 있는 구역은 (r, c)로 나타낼 수 있다. 구역을 다섯 개의 선거구로 나눠야 하고, 각 구역은 다 www.acmicpc.net 아이디어 1. x, y, d1, d2의 범위를 4.. 2020. 1. 7. [SW Expert] 4615. 재미있는 오셀로 게임 (Java) 문제 링크 : [SW Expert] 4615. 재미있는 오셀로 게임 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 아이디어 1. N 값에 맞춰 보드판을 생성한다. 2. 입력받은 x, y 좌표에 바둑알 놓는다. 3. 놓은 위치에서 상, 하, 좌, 우, 대각선 총 8개 위치를 탐색, 내 바둑알이 있는지 확인한다. 4. 내 바둑알이 있다면 어디까지 바둑알을 뒤집을지 위치 확인한다. 5. 확인한 위치까지 바둑알을 뒤집는다. 후기 어린 시절에 많이 했었던 오셀로 게임을 구현하는 문제였다. 문제를 읽자마자 어떻게 구현해야 할지 감은 바로 왔지만, 구현하는 데 있어서는 꽤나 까다로웠다. 총 8방향의 모든 부분을 체크해줘야.. 2020. 1. 1. 이전 1 ··· 4 5 6 7 다음