4 条题解
-
0
-
-5
需要买 n 支铅笔,有三种可以买的,问你最少的价钱是多少。
我们可以算出买每一种铅笔的价钱,然后将三种的价钱取最小值即可。
我们来推算一下买一种铅笔的最小值,设包装内有 a 支,需要花 x 元,那么需要花的钱数就是一共要买的数量乘上每一包的价钱,也即是
(n / a) + (n % a == 0 ? 0 : 1)) * x。#include <bits/stdc++.h> using namespace std; //#define int long long typedef long long LL; signed main() { ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); int n, a, b, c, x, y , z; cin >> n; cin >> a >> x; cin >> b >> y; cin >> c >> z; int ans = min({((n / a) + (n % a == 0 ? 0 : 1)) * x, ((n / b) + (n % b == 0 ? 0 : 1)) * y, ((n / c) + (n % c == 0 ? 0 : 1)) * z}); cout << ans << endl; return 0; }
- 1
信息
- ID
- 46
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 5
- 标签
- 递交数
- 123
- 已通过
- 49
- 上传者