题目描述
算术能力是每个炉石玩家必不可少的,假设现在有三种伤害卡,伤害值分别是
。并且每种伤害卡的数量你可以认为是无限的。现在牛牛想知道是否存在一种方式可以刚好造成
点伤害,输出
分别表示三种伤害卡的使用个数。
数据保证一定存在解。如果存在多组解,输出任意一组。
输入描述:
一行四个整数分别表示
输出描述:
一行输出三个整数分别表示
示例1
输入
3 4 5 20
输出
4 2 0
思路:
既然保证一定有解那就好做了,直接枚举答案即可。
AC代码:
const int N = 1e5 + 10;
const int mod = 998244353;
ll a, b, c, k;
int main()
{
slddd(a, b, c);
sld(k);
per(i, k / a, 1)
{
per(j, (k - i * a) / b, 1)
{
if ((k - a * i - b * j) % c == 0)
{
pddd(i, j, (k - a * i - b * j) / c);
return 0;
}
}
}
return 0;
}