排隊打水
阿新 • • 發佈:2017-10-06
namespace spa eat can cout color string cst prior
給 N個人,M個水管,問第N+1個人等多久才能打水。
思路:
我偷懶用了單調隊列。 用的不太熟,稍微調了一會。
#include<iostream> #include<cstdio> #include<queue> #include<vector> #include<algorithm> #include<cstring> using namespace std; int n,m; int a[100009]; priority_queue<long long >q; long long x; int main() { freopen("death.in","r",stdin); freopen("death.out","w",stdout); scanf("%d%d",&n,&m); for(int i=1;i<=n;i++) scanf("%d",&a[i]); for(int i=1;i<=m;i++) q.push(-a[i]); for(int i=m+1;i<=n;i++) { x=q.top();q.pop(); x-=1LL*a[i]; q.push(x); } cout<<-q.top(); return 0; }
排隊打水