Contents 1. 문제🔥 링크: https://www.acmicpc.net/problem/16986 문제를 요약하자면, 3명이서 인싸 가위바위보를 할 때의 우승자를 정하기 위한 구체적인 방식은 아래와 같습니다. (편의상 참가자 3명을 A, B, C) A, B, C는 게임 시작 전 우승을 위해 필요한 승수와 경기 진행 순서를 미리 합의합니다. 경기 진행 순서가 A, B, C라고 가정하겠습니다. 먼저 A와 B가 경기를 진행해 승자를 결정합니다. 만약 두 사람이 같은 손동작을 내어 무승부가 발생할 경우 경기 진행 순서상 뒤인 사람이 이긴 것으로 간주합니다. 즉 A와 B가 같은 손동작을 내면 B의 승리, A와 C가 같은 손동작을 내면 C의 승리, B와 C가 같은 손동작을 내면 C의 승리입니다. 이전 경기의 ..
Contents 1. 문제🔥 링크: https://www.acmicpc.net/problem/12100 문제를 요약하자면, 첫째 줄에 보드의 크기 N (1 ≤ N ≤ 20)이 주어집니다. 둘째 줄부터 N개의 줄에는 게임판의 초기 상태가 주어집니다. 0은 빈칸을 나타내며, 이외의 값은 모두 블록을 나타냅니다. 블록에 쓰여 있는 수는 2보다 크거나 같고, 1024보다 작거나 같은 2의 제곱 꼴입니다. 블록은 적어도 하나 주어집니다. 최대 5번 이동시켜서 얻을 수 있는 가장 큰 블록을 출력해야 합니다. 1) 예제 입출력❄️ 상, 하, 좌, 우로 움직일 때 판의 모든 블록들이 함께 움직입니다. 이 때 5번 이동시켜 얻을 수 있는 가장 큰 블록을 출력해야 합니다. 위의 예시에선 5번 어떻게 움직여도 맨 아랫줄 8..
Contents 1. 문제🔥 링크: https://www.acmicpc.net/problem/2961 요약하자면, 재료의 개수 N이 주어지고, 다음 N개의 줄 동안 각 재료가 갖는 신맛과 쓴맛을 입력받습니다. 1개 이상의 재료를 사용했을 때 각 재료의 신맛은 모두 곱해지고, 쓴맛은 모두 더해집니다. 이 때, 신맛과 쓴맛의 차이가 가장 작을 때를 출력하면 됩니다. 1) 예제 입출력❄️ 재료가 1개일 때입니다. 해당 재료만 고르면 되고, 신맛은 3이고 쓴맛은 10입니다. 그 차이는 7이므로, 7을 출력합니다. 2. 핵심 논리☢️ 재료의 신맛, 쓴맛을 이중리스트로 받습니다. 재료에 대해 1개~N개를 선택하는 combination을 모두 고려하여, 각각 신맛 쓴맛의 차이를 result에 min으로 갱신하는 것이..
Contents 1. 문제🔥 링크: https://www.acmicpc.net/problem/1007 문제를 요약하자면, 첫 줄에 테스트 케이스 T가 주어지고, 각 테스트 케이스에 대해 점의 개수 N이 주어집니다. 다음 N개의 줄에 x, y 좌표가 주어집니다. N은 항상 짝수입니다. 좌표 평면에 N개의 점이 있을 때, 모든 점을 사용해서 벡터를 N/2개 만들 때 벡터의 합이 최소가 될 때 최솟값을 출력해야 합니다. 1) 예제 입출력❄️ 첫 번째 예시는 4개의 점에 의해 정사각형이 만들어지기 때문에, 서로 반대방향의 벡터를 가로나 세로로 만들면 합했을 때 최솟값 0이 나오며, 두 번째 예시는 두 점이기 때문에 두 점에 의한 벡터의 길이가 곧 벡터의 합이 되어 길이를 출력하면 됩니다. 2. 핵심 논리☢️ 먼..
Contents 1. 문제🔥 링크: https://www.acmicpc.net/problem/16439 문제를 요약하자면, N명의 회원들에 대해, M개의 치킨에 대해 선호도가 주어졌습니다. 3개의 치킨만 골라서, 각자 3개의 치킨 중에 선호도가 제일 높은 치킨의 선호도를 N명에 대해 만족도의 합이 최대가 되도록 출력해야 합니다. 1) 예제 입출력❄️ 예제 입력 1을 보면, 첫번째, 세 번째, 다섯 번째 치킨을 고른 경우, 첫 번째 회원(1행)의 만족도는 5번째 치킨의 만족도인 5이고, 두 번째 회원(2행)은 첫 번째 치킨의 만족도인 5이고, 세 번째 회원(3행)은 3번째 치킨의 만족도인 3으로 합이 13이 되며, 이게 만족도의 합중에 최댓값입니다. 2. 핵심 논리☢️ 치킨의 종류에 대한 모든 3가지 co..