SFPC/2022
2022 SFPC pD1 ver. 1
열정아빠와아들
2023. 2. 1. 20:45
// ver. 1 속도가 느림(3중 for문)
#include <stdio.h>
int main()
{
int n, m;
int d1, d2, d3;
scanf("%d %d", &n, &m);
scanf("%d %d %d", &d1, &d2, &d3);
int t = n - m; // n - m이 (독도새우 수) - (보호해야 하는 수)이므로 n - m을 해준다.
int ans = 1e8; // 1e8 = 100000000
// i는 d1을 사용한 횟수다.
for (int i = 0; i <= t; i++)
{
// j는 d2를 사용한 횟수다.
for (int j = 0; j <= t; j++)
{
// k는 d3를 사용한 횟수다.
for (int k = 0; k <= t; k++)
{
// x에 d1, d2, d3를 이용해 잡은 새우 수를 모두 더해준다.
int x = i * d1 + j * d2 + k * d3;
// x가 t와 같다는것은 잡아야 하는 새우 수를 충족했다는 뜻
if (x == t)
// 만약 d1,d2,d3를 사용한 횟수인 i,j,k가 ans보다 작다는것은 최솟값이 나왔다는 것이므로 바꿔준다.
if (i + j + k < ans) ans = i + j + k;
}
}
}
// 만약 ans가 1e8라는건 모든 새우를 못잡는것이므로 -1을 출력한다.
if (ans == 1e8) printf("-1");
else printf("%d", ans);
}