NYPC(10)
-
NYPC 2022 Round 2-A | 로봇 청소기
[문제] N×M 크기의 격자 모양 마루가 있다. 위에서부터 R째 행, 왼쪽에서부터 C번째 열에 있는 마루의 칸은 (R,C)로 나타낸다. 마루는 자주 더러워지기 때문에 평소 관리를 위해 로봇 청소기를 사용하고 있다. 로봇 청소기가 청소를 시작하면 첫 행의 임의의 칸에서 출발하여, 이동하면서 지나가는 칸을 모두 청소한다. 그렇게 첫 행에서 출발하여 마지막 행에 도착하면 한 번의 청소를 끝낸 것이다. 로봇 청소기가 격자 위를 이동하는 방법은 L, D, R의 세 가지인데, 로봇 청소기의 현재 위치가 (r,c)라면 L은 (R+1,C−1)로 이동하는 것이다. 단, 해당하는 칸이 존재해야 한다. D는 (R+1,C)로 이동하는 것이다. R은 (R+1,C+1)로 이동하는 것이다. 단, 해당하는 칸이 존재해야 한다. 각 ..
2023.08.18 -
NYPC 2022 Round 2-A | 사진작가
[문제] N개의 구조물이 좌우로 배치되어 있다. 왼쪽에서 i번째 구조물의 색은 Ai이다. 사진작가 배찌는 좌우로 연속한 구조물을 사진에 담으려고 한다. 다만, 배찌는 개성 있는 사진을 찍고 싶기 때문에 사진에 색이 같은 구조물이 여러 개 있으면 마음에 들어 하지 않고, 최대한 많은 구조물을 사진에 담고 싶어 한다. 구조물의 색 정보가 주어졌을 때, 한 사진에 담을 수 있는 구조물 수의 최댓값을 구하는 프로그램을 작성하시오. [입력 형식] 첫 줄에 구조물의 수를 나타내는 정수 N이 주어진다. (1 ≤ N ≤ 200,000) 두 번째 줄에 N개의 정수 A1, A2, ⋯⋯, AN이 공백으로 구분되어 주어진다. (1 ≤ Ai ≤ 1,000,000) [출력 형식] 첫 줄에 한 사진에 담을 수 있는 구조물..
2023.08.10 -
NYPC 2021 예선 | K-좀비
[문제] 우니는 놀이공원에 있는 좀비 어트랙션에 들어가게 되었다. 좀비 어트랙션은 N개 행과 M개 열의 격자로 이루어져 있다. 우니는 처음에 격자의 왼쪽 위인 1번째 행, 1번째 열 격자 칸에서 시작해서, 격자의 오른쪽 아래인 N번째 행, M번째 열 격자 칸까지 가려고 한다. 우니는 현재 있는 칸에서 위, 아래, 왼쪽, 오른쪽 칸 중 하나로 움직일 수 있다. 우니는 좀비 때문에 겁에 질려있기 때문에, 움직이지 않고 가만히 있을 수는 없다. 한 칸을 움직이는 데는 1의 시간이 걸리며, 처음에는 시각 0으로 시작한다. 즉, 현재 시각은 지금까지 움직인 횟수와 같다. 좀비 어트랙션의 각 격자 칸은 다음 중 하나이다. 빈칸: 우니가 자유롭게 오갈 수 있는 격자 칸이다. 벽: 우니가 오갈 수 없는 격자 칸이다. ..
2023.08.01 -
NYPC 2022 예선 | 인류의 적 모기 퇴치
[문제] 최근 이상 기후로 인해 붐힐 마을에 모기가 많이 늘어났다. 마리드는 붐힐 마을 주민들을 돕기 위해 물풍선으로 모기들을 퇴치하려고 한다. 마리드는 기존의 십자 모양의 물풍선만으로 모기를 효율적으로 퇴치할 수 없다는 것을 깨달았고, 엑스 자 모양으로 터지는 물풍선을 새로 개발했다. 붐힐 마을은 N x N 크기의 22차원 배열로 표현할 수 있고, 배열의 각 칸에 존재하는 모기의 수가 주어진다. 마리드는 한 칸을 선택하여 물풍선을 놓고 터트린다. 물풍선을 터트리면 범위 M으로 물줄기가 뻗어나가 모기를 퇴치할 수 있다. 예를 들어, 십자 모양의 경우, 물풍선을 터트린 칸에서 위쪽, 오른쪽, 아래쪽, 왼쪽의 M개 칸 이내의 모든 모기를 퇴치한다. 엑스 자 모양의 경우, 네 개의 대각선 방향으로 M개 칸 이..
2023.07.18 -
NYPC 2021 예선 | 페인트 칠하기
[문제] N×M 크기의 격자판이 있다. N 개의 행은 1부터 N까지 번호가 매겨져 있고, M 개의 열은 1부터 M까지 번호가 매겨져 있다. 1부터 7까지 일곱 가지의 색을 격자판에 칠할 수 있다. 색을 칠할 때는 격자판의 한 행을 선택해서 그 행에 있는 모든 격자 칸에 한 색을 덧칠할 수 있고, 혹은 격자판의 한 열을 선택해서 그 열에 있는 모든 격자 칸에 한 색을 덧칠할 수 있다. 예를 들어, 아래와 같이 4×4 크기의 격자판이 있다고 하자. 초기에 각 격자 칸에는 아무런 색이 칠해져 있지 않다. 다음 은 3 번 행에 빨간색(1번 색)을 칠하고 3 번 열에 파란색(3번 색)을 칠했을 때의 과정을 보여준다. 각 격자 칸마다 최종적으로 칠해져 있는 색이 주어질 때, 적절히 색을 칠해 주어진 상황이 되도록 ..
2023.07.11 -
NYPC 2021 예선 | 파티
[문제] 기말 시험이 끝난 N 명의 친구들은 파티를 하기로 했다. 파티에 필요한 음식과 물품들을 사기 위해 각자 미리 돈을 사용했다. 친구들은1번부터 번까지 번호가 붙어 있다고 하자. 친구들 중 i 번째 친구가 사용한 돈은 Mi원이다. 친구들의 부담을 동일하게 하기 위해 파티 후에 서로 돈을 주고받아 사용한 금액이 같도록 하려고 한다. 금액이 정확히 나누어 떨어지지는 않을 수 있으므로, 돈을 가장 많이 사용한 친구와 가장 적게 사용한 친구의 금액 차이가 1인 것까지는 허용한다. 3 명의 친구 A, B, C가 파티를 하였고, 각자 사용한 금액이 6000원, 3000원, 1000원이라고 하자. 아래 그림처럼 B가 A에게 334원, C가 A에게 2333원을 주면 각자 사용한 금액이 A는 3333원, B는 3..
2023.05.21