ABC415D题解
贪心。
不难想到,先在
可以按照
记得不要见祖宗。
代码
#include<bits/stdc++.h>
using namespace std;
#define int ll
typedef long long ll;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;
typedef pair<int, pii> pipii;
const int MAXN = 2e5+5;
ll n, m;
pipii shop[MAXN];
ll ans;
signed main()
{
scanf("%lld%lld", &n, &m);
for(int i = 1;i <= m;i++)
{
scanf("%lld%lld", &shop[i].second.first, &shop[i].second.second);
shop[i].first = shop[i].second.first - shop[i].second.second;
// shop[i].first 就是上文所说的 D
}
sort(shop + 1, shop + m + 1);
for(int i = 1;i <= m;i++)
{
if(n < shop[i].second.first) continue;
ans += (n - shop[i].second.first + shop[i].first) / shop[i].first;
n = n - ((n - shop[i].second.first + shop[i].first) / shop[i].first) * shop[i].first;
}
printf("%lld", ans);
return 0;
}