

이번 문제는 사칙연산을 이용해 규칙을 찾으려 할 수도 있지만, 브루트포스 방식을 사용하면 더 쉽게 해결할 수 있는 문제이다.
5kg 봉지를 최대한 사용하는 경우부터 확인하면서 남은 무게가 3kg 봉지로 채워지는지 검사하면 된다.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp3
{
internal class BruteForce
{
static void Main(string[] args)
{
// 2839 설탕 배달
// 5kg을 최대한 사용한 후 3으로 나누어지는지 확인
// 배달해야 할 설탕의 총 무게 입력
int N = int.Parse(Console.ReadLine());
// 5kg 봉지를 최대한 많이 사용하는 경우부터 확인
// N/5 는 사용할 수 있는 최대 5kg 봉지 개수
for (int i = N / 5; i >= 0; i--)
{
// i개의 5kg 봉지를 사용했을 때 남는 설탕의 무게
int remainder = N - (i * 5);
// 남은 설탕이 3kg 봉지로 정확히 나누어 떨어지는지 확인
if (remainder % 3 == 0)
{
// 사용한 총 봉지 개수 출력
// (5kg 봉지 개수 + 3kg 봉지 개수)
Console.WriteLine(i + remainder / 3);
return;
}
}
// 위 조건을 만족하는 경우가 없다면 정확히 만들 수 없는 경우
Console.WriteLine(-1);
}
}
}


'코딩 테스트 > 백준' 카테고리의 다른 글
| 백준 - [단계별로 풀어보기 브루트 포스] 1436 영화감독 숌 (0) | 2026.04.08 |
|---|---|
| 백준 - [단계별로 풀어보기 브루트 포스] 1018 체스판 다시 칠하기 (0) | 2026.04.07 |
| 백준 - [단계별로 풀어보기 브루트 포스] 19532 수학은 비대면강의입니다. (0) | 2026.04.06 |
| 백준 - [단계별로 풀어보기 브루트 포스] 2231 분해합 (0) | 2026.04.06 |
| 백준 - [단계별로 풀어보기 브루트 포스] 2798 블랙잭 (0) | 2026.04.05 |