[2016-04-04][codeforces][639][A][Bear and Displayed Friends]

Posted 红洋

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[2016-04-04][codeforces][639][A][Bear and Displayed Friends]相关的知识,希望对你有一定的参考价值。

  • 时间:2016-04-04 12:38:53 星期一

  • 题目编号:[2016-04-04][codeforces][639][A][Bear and Displayed Friends]

  • 题目大意:有n朋友,第i个朋友有亲密度ti,有q次命令,1 id表示编号为id的朋友上线,2 id表示是否在线,且亲密度在前k个,输出结果

  • 分析:可以发现k最大为0,只需要维护前k个最大值就ok,每加入一个数字就维护一次最大值

  1. #include <cstring>
  2. #include <cstdio>
  3. using namespace std;
  4. int a[150000 + 10];
  5. int main(){
  6. int n,k,q,b,c;
  7. scanf("%d%d%d",&n,&k,&q);
  8. for(int i = 1;i <= n ; ++i){
  9. scanf("%d",&c);
  10. a[i] = c;
  11. }
  12. int inq[10];
  13. memset(inq,0,sizeof(inq));
  14. for(int i = 0;i < q;++i){
  15. scanf("%d%d",&b,&c);
  16. if(b - 1){
  17. int flg = 1;
  18. for(int j = 0;j < k; ++j){
  19. if(inq[j] == c){
  20. flg = 0;break;
  21. }
  22. if(inq[j] == 0) break;
  23. }
  24. puts(flg?"NO":"YES");
  25. }else {
  26. int minpos = -1,curmin = a[c];
  27. for(int i = 0; i < k ; ++i){
  28. if(a[inq[i]] < curmin){
  29. curmin = a[inq[i]];
  30. minpos = i;
  31. }
  32. }
  33. if(minpos != -1) inq[minpos] = c;
  34. }
  35. }
  36. return 0;
  37. }




以上是关于[2016-04-04][codeforces][639][A][Bear and Displayed Friends]的主要内容,如果未能解决你的问题,请参考以下文章

函数不接受列调用

“耐撕”团队 2016.04.04 站立会议

Pandas:过去 n 天的平均值

2016.04.04HA集群配置

Arduino101 中使用 Mirf 库的问题(2016-04-04)

教你成为全栈工程师