赞
踩
N家商店都有很火爆的一种物品。其中第i家商店与Takahashi的距离是 A i A_i Ai,售价是 P i P_i Pi,共有 X i X_i Xi个。
每家商店都是一分钟卖出去一个,问Takahashi最少花多少钱才能买到一个。
不能买到输出 − 1 -1 −1。
到商店需要时间为A,这期间共卖出A个货(假设可以卖成负的),如果Takahashi 到了还有剩余(X>A),那么就能以P的价格买到这个货。
每家商店更新一下最小值即可。
- #include <bits/stdc++.h>
- using namespace std;
- #define mem(a) memset(a, 0, sizeof(a))
- #define dbg(x) cout << #x << " = " << x << endl
- #define fi(i, l, r) for (int i = l; i < r; i++)
- #define cd(a) scanf("%d", &a)
- typedef long long ll;
-
- int main()
- {
- int N;
- cin >> N;
- bool ifCan = false; //是否可以买到(初始值是false)
- int m = 1e9 + 1;
- while (N--)
- {
- int a, b, c;
- scanf("%d%d%d", &a, &b, &c);
- if (a < c) //可以买到
- {
- ifCan = true; //可以买到
- m = min(m, b); //更新最小花费
- }
- }
- if (ifCan)
- printf("%d\n", m);
- else
- printf("-1\n");
- return 0;
- }

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。