目录
题目大意
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的价格买到这个货。
每家商店更新一下最小值即可。
AC代码
#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;
}