はまやんはまやんはまやん

hamayanhamayan's blog

Greedy Takahashi [AtCoder Beginner Contest 149 B]

https://atcoder.jp/contests/abc149/tasks/abc149_b

解説

https://atcoder.jp/contests/abc149/submissions/9263127

高橋くんがクッキーを尽きるまで食べる。
高橋くんが食べるクッキーの量はmin(A,K)枚である。
よってこの枚数分だけ食べて、それをKからひいておこう。

次に青木くんがクッキーを尽きるまで食べる。
同様に青木くんが食べるクッキーの量はmin(B, K)枚である。
よってこの枚数分だけ食べて、それをKからひいておこう。

これで、高橋くんと青木くんの持っている枚数を答えれば答え。
1012はintでは収まらないので、long longで変数を定義しよう。

ll A, B, K;
//---------------------------------------------------------------------------------------------------
void _main() {
    cin >> A >> B >> K;

    ll eat = min(A, K);

    A -= eat;
    K -= eat;

    eat = min(B, K);

    B -= eat;
    K -= eat;

    printf("%lld %lld\n", A, B);
}