自分が書いたコード
using System;
using System.Linq;
class Program
{
static void Main(string[] args)
{
int[] input = Console.ReadLine().Split(' ').Select(i => int.Parse(i)).ToArray();
int N = input[0];
int Y = input[1] / 1000;
for (int i = 0; i <= N; i++)
{
for (int j = 0; j <= N - i; j++)
{
int k = N - (i + j);
if (10 * i + 5 * j + k == Y)
{
Console.WriteLine($"{i} {j} {k}");
return;
}
}
}
Console.WriteLine("-1 -1 -1");
}
}
最初に提出したときは x
, y
がそれぞれ決まれば z
が勝手に定まることをすっかり忘れて?しまって、なぜか3重ループを書いていました、、、
問題文的に全体を1000で割ってしまって問題なかったので1000で割った。