본문 바로가기

구현

(60)
[백준 / BOJ] 17281 ⚾ (야구) 문제 출처 : https://www.acmicpc.net/problem/17281 17281번: ⚾ ⚾는 9명으로 이루어진 두 팀이 공격과 수비를 번갈아 하는 게임이다. 하나의 이닝은 공격과 수비로 이루어져 있고, 총 N이닝 동안 게임을 진행해야 한다. 한 이닝에 3아웃이 발생하면 이닝이 종 www.acmicpc.net ⚾는 9명으로 이루어진 두 팀이 공격과 수비를 번갈아 하는 게임이다. 게임은 N개의 이닝으로 이루어져있다. 우리는 9명이 선수가 각 이닝에 얻는점수를 알고있다. 각 선수의 순서를 적절히 배치하여 (1번부터 9번까지) 얻을수있는 최대 점수를 구하는 문제다. 풀이 완전탐색으로 푼 문제다. 모든 선수의 배치가능한 조합을 구한후, 구해진 조합을 토대로 점수를 구하면 된다. 선수는 9명이지만, 1..
[백준 / BOJ] 20924 트리의 기둥과 가지 문제 출처 : https://www.acmicpc.net/problem/20924 20924번: 트리의 기둥과 가지 첫 번째 줄에는 노드의 개수 $N$($1 \le N \le 200\,000$)과 루트 노드의 번호 $R$($1 \le R \le N$)이 주어진다. 이후 $N-1$개의 줄에 세 개의 정수 $a$, $b$, $d$($1 \le a, b \le N$, $ a \ne b$)가 주어진다. 이는 $a$번 www.acmicpc.net N개의 노드와 N-1개의 간선으로 이루어진 트리가 있다. 이 트리의 루트를 타고 이동하다가, 처음으로 2개 이상의 노드가 연결된 노드가 발견될 경우, 이를 기가 노드라고 하며, 이전 경로를 기둥경로 라고 한다. 기가 노드에서시작해서 기둥 경로를 제외하고, 리프노드까지의 ..
[백준 / BOJ] 20921 그렇고 그런 사이 문제 출처 : https://www.acmicpc.net/problem/20921 20921번: 그렇고 그런 사이 정수 $N$, $K$가 주어진다. ($2 \leq N \leq 4\,242$, $0 \leq K \leq \frac{N(N-1)}{2}$) www.acmicpc.net 환주는 두명을 그렇고 그런 사이로 만드는데 전문가이다. 그렇고 그런 사이가 될려면, 다음 조건을 만족해야한다. (P(i)가 갖고있는 숫자가 P(i+a)보다 커야함) (단, a>0) 환주의 친구의수 N, 그렇고 그런 사이로 만들어야하는 쌍의수 K가 주어졌을때, 그렇고 그런 사이를 만드는 경우를 출력하는 문제다. 풀이 재밌는..? 문제였다. 문제를 처음 봤을때는 감이 잘 안잡혔는데,(dp라고 예상했었음) 문제의 예제를 직접 해보니..
[백준 / BOJ] 20920 영단어 암기는 괴로워 문제 출처 : https://www.acmicpc.net/problem/20920 20920번: 영단어 암기는 괴로워 첫째 줄에는 영어 지문에 나오는 단어의 개수 $N$과 외울 단어의 길이 기준이 되는 $M$이 공백으로 구분되어 주어진다. ($1 \leq N \leq 100\,000$, $1 \leq M \leq 10$) 둘째 줄부터 $N+1$번째 줄까지 외울 단 www.acmicpc.net 영어 단어장에 N개의 단어가 적혀있다. 화은이는 단어장에있는 N개의 단어들중 K개의 길이 이상의 단어를 다음 순서에따라 정렬할려고한다. 1. 자주 나오는 단어순으로 정렬한다. 2. 단어의 길이가 길수록 앞으로 배치한다. 3. 알파벳 사전 순으로 앞에있는 단어일수록 앞에 배치한다. N과 K, N개의 단어가 주어졌을때,..
[백준 / BOJ] 8972 미친 아두이노 문제 출처 : https://www.acmicpc.net/problem/8972 8972번: 미친 아두이노 요즘 종수는 아두이노를 이용해 "Robots"이라는 게임을 만들었다. 종수는 아두이노 한대를 조정하며, 미친 아두이노를 피해다녀야 한다. 미친 아두이노는 종수의 아두이노를 향해 점점 다가온다. www.acmicpc.net 종수는 R*C의 그리드에서 아두이노를 움직이는 게임을 진행한다. 이 게임에는, 종수의 아두이노와 미친 아두이노가 있으며, 미친아두이노는 항상 종수의 아두이노와 가장 가까워지는 방향으로 움직인다. 미친아두이노의 위치, 종수의 아두이노의 위치, 종수의 아두이노가 움직이는 방향이 주어졌을때, 그리드의 최종상태를 출력하는 문제다. (단, 종수의 아두이노가 미친아두이노를 만난다면 즉시 종료..
[백준 / BOJ] 16967 배열 복원하기 문제 출처 : https://www.acmicpc.net/problem/16967 16967번: 배열 복원하기 크기가 H × W인 배열 A와 두 정수 X와 Y가 있을 때, 크기가 (H + X) × (W + Y)인 배열 B는 배열 A와 배열 A를 아래로 X칸, 오른쪽으로 Y칸 이동시킨 배열을 겹쳐 만들 수 있다. 수가 겹쳐지면 수가 합쳐 www.acmicpc.net 크기가 H*W인 배열A를 아래로 X 오른쪽으로 Y만큼 이동한 배열을 배열 A와 겹쳤을때 나온 배열을 배열 B라고 하자. (배열이 겹쳐지면 같은 위치의 수가 합쳐진다.) 배열의 크기 H, W 이동범위 X, Y, 배열 B가 주어질때 배열 A를 구하는 문제다. 풀이 수학? 구현? 문제다. 배열B가 주어졌을때, 원래 배열의 (i,j)의 값은 다음과 같..
[백준 / BOJ] 9944 N*M 보드 완주하기 문제 출처 : https://www.acmicpc.net/problem/9944 9944번: NxM 보드 완주하기 N×M 보드 위에서 할 수 있는 게임이 있다. 보드는 크기가 1×1인 정사각형 칸으로 나누어져 있다. 보드의 각 칸은 빈 칸 또는 장애물이다. 장애물은 아래 그림에선 어두운 사각형으로 표시되어져 www.acmicpc.net N*M크기의 보드에 장애물(*) 빈칸(.)이 있다 보드의 빈칸위에 놓인 공은 다음 규칙에따라 움직인다. 위, 아래, 오른쪽, 왼쪽 중 방향 하나를 고른 다음, 그 방향으로 공을 계속해서 이동시킨다. 공은 장애물, 보드의 경계, 이미 공이 지나갔던 칸을 만나기 전까지 계속해서 이동한다. 게임은 공이 더 이상 이동할 수 없을때 끝난다. 모든 빈칸을 방문하기위한 이동횟수의 최솟..
[백준 / BOJ] 17780 새로운 게임 (Java) 문제 출처 : https://www.acmicpc.net/problem/17780 17780번: 새로운 게임 재현이는 주변을 살펴보던 중 체스판과 말을 이용해서 새로운 게임을 만들기로 했다. 새로운 게임은 크기가 N×N인 체스판에서 진행되고, 사용하는 말의 개수는 K개이다. 말은 원판모양이고, 하 www.acmicpc.net (...) 풀이 문제에서 주어진 그대로 풀면되는 시뮬레이션 문제였다. 문제 해석시 주의할점이 있었는데, 1. 다음 위치가 빨간색인데, 이동할 위치에 이미 다른 체스말들이 있는경우, 이동후 체스말을 위로 쌓은다음에 체스말의 순서를 뒤집는것이 아니라, 이동 전에 뒤집고 체스말을 위로 쌓는것이다. 예를들어, 현재 이동할 체스말들이 (1,2,3) 순서대로 쌓여있고 이동위치에 이미 (4,5)..