社区讨论
求助这道题
灌水区参与者 2已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @lo95cdxn
- 此快照首次捕获于
- 2023/10/28 05:49 2 年前
- 此快照最后确认于
- 2023/10/28 05:49 2 年前
https://judge.ccns.io/problems/16
用的 pbds tree,还过了几个点,有无大佬帮忙看看哪里的问题啊,搞了一晚上了
CPP#include<bits/stdc++.h>
#include<ext/pb_ds/assoc_container.hpp>
#include<ext/pb_ds/tree_policy.hpp>
using namespace std;
using namespace __gnu_pbds;
int const N=2333333;
int n,m,k,a[N],b[N];
namespace rando{
mt19937_64 rnd(chrono::steady_clock::now().time_since_epoch().count());
auto gen=[](int l,int r){return rnd()%(r-l+1)+l;};
}
tree<pair<int,int>,null_type,greater<pair<int,int> >,rb_tree_tag,
tree_order_statistics_node_update>tr;
int main(){
ios::sync_with_stdio(0);
cin>>n>>m>>k;
for(int i=1;i<=n;i++)
cin>>a[i];
for(int i=1;i<=m;i++)
tr.insert({a[i],i});
for(int i=1;i<=n-m+1;i++){
cout<<(*tr.find_by_order(k-1)).first<<" ";
tr.erase({a[i],i}),tr.insert({a[i+m],i+m});
}
cout<<"\n";
}
回复
共 1 条回复,欢迎继续交流。
正在加载回复...