Educational Codeforces Round 90 (Rated for Div. 2) A. Donut Shops(数学)

题目链接:https://codeforces.com/contest/1373/problem/A

题意

有两种包装的甜甜圈,第一种 $1$ 个 $a$ 元,第二种 $b$ 个 $c$ 元,问买多少个甜甜圈按第一种买会更便宜,买多少个甜甜圈按第二种买会更便宜,输出任一方案。

题解

梳理过后发现本题只需回答两个问题:

  1. 要不要买第一种包装
  2. 要不要买第二种包装

第一种包装是要买 $1$ 个,花费 $a$ 元,若买第二种替代,最少要买 $b$ 个,花费 $c$ 元,所以比较 $a$ 和 $c$ 。

同理,第二种包装要买 $b$ 个,花费 $c$ 元,若买第一种替代,最少要买 $b$ 个,花费 $a imes b$ 元,所以比较 $c$ 和 $a imes b$ 。

代码

#include <bits/stdc++.h>
using namespace std;

void solve() {
    int a, b, c; cin >> a >> b >> c;
    cout << (a < c ? 1 : -1) << ' ' << (c < 1LL * a * b ? b : -1) << "
";
}

int main() {
    int t; cin >> t;
    while (t--) solve();
}
原文地址:https://www.cnblogs.com/Kanoon/p/13196761.html