AtCoderC - Friends and Travel costs 模拟
Posted karshey
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AtCoderC - Friends and Travel costs 模拟相关的知识,希望对你有一定的参考价值。
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef pair<int,int> pii;
#define pb push_back
#define fi first
#define se second
#define mem(a,x) memset(a,x,sizeof(a));
#define db double
#define fir(i,a,n) for(int i=a;i<=n;i++)
#define debug(x) cout<<#x<<" "<<x<<endl;
const int inf=0x3f3f3f3f;
const int MOD=1e9+7;
//======================
const int N=2e5+10;
struct node
{
ll a,b;//loca money
};
vector<node>v;
ll n,k;
ull ans=0;
bool cmp(node a,node b)
{
return a.a<b.a;
}
int main()
{
cin>>n>>k;
fir(i,1,n)
{
ll aa,bb;scanf("%lld%lld",&aa,&bb);
v.pb({aa,bb});
}
sort(v.begin(),v.end(),cmp);
int i=0;
while(k)
{
ans+=k;
k=0;
for(;i<n;i++)
{
if(v[i].a>ans) break;
else k+=v[i].b;
}
}
cout<<ans;
return 0;
}
顺便学了一些结构体排序:虽然T了
lower_bound的重载已经结构体的如何用
c++ 结构体和vector进行lower_bound和upper_bound
以上是关于AtCoderC - Friends and Travel costs 模拟的主要内容,如果未能解决你的问题,请参考以下文章
Codeforces 483B - Friends and Presents - [二分]
Codeforces483B. Friends and Presents(二分+容斥原理)