STL格斗场
来源:互联网 发布:兰亭序 知乎 编辑:程序博客网 时间:2024/04/28 04:13
热血格斗场
#include<iostream>#include<set>#include<stdio.h>#include<stdlib.h>using namespace std;set<pair<int,int> >record;void solve(int p,int i){record.insert(make_pair(p,i));set<pair<int,int> >::iterator it,left,right;right=record.end();right--;it=record.find(make_pair(p,i));if(it==record.begin()){it++;printf("%d %d\n",i,it->second);}else if(it==right){it--;printf("%d %d\n",i,it->second);}else{left=it;left--;right=it;right++;if((it->first-left->first)<=(right->first-it->first)) printf("%d %d\n",i,left->second);else printf("%d %d\n",i,right->second);}}int main(){int n;scanf("%d",&n);record.insert(make_pair(1000000000,1));for(int i=0;i<n;i++){int power,id;scanf("%d%d",&id,&power);solve(power,id);}return 0;}
冷血格斗场
#include<iostream>#include<set>#include<stdio.h>#include<stdlib.h>using namespace std;set<pair<int,int> >record;void solve(int p,int i){record.insert(make_pair(p,i));set<pair<int,int> >::iterator it,left,right;right=record.end();right--;it=record.find(make_pair(p,i));if(it==record.begin()){right=it;right++;printf("%d %d\n",i,right->second);//power值相等,则按id排序,将id大的删除 if(p==right->first){record.erase(right);} }else if(it==right){left=it;left--;printf("%d %d\n",i,left->second);if(p==left->first){record.erase(it);}}else{left=it;left--;right=it;right++;if((it->first-left->first)<(right->first-it->first)) printf("%d %d\n",i,left->second);else if((it->first-left->first)>(right->first-it->first)) printf("%d %d\n",i,right->second);else{if(left->second<right->second){printf("%d %d\n",i,left->second);}else{printf("%d %d\n",i,right->second);}}if(p==left->first){record.erase(left);}if(p==right->first){record.erase(right);}}}int main(){int n;scanf("%d",&n);record.insert(make_pair(1000000000,1));for(int i=0;i<n;i++){int power,id;scanf("%d%d",&id,&power);solve(power,id);}return 0;}
0 0
- STL格斗场
- 【stl set】冷血格斗场 && 热血格斗场
- 【STL专项练习】热血格斗场
- OPENJUDGE 热血格斗场
- OPENJUDGE 冷血格斗场
- 【OpenJudge3344】冷血格斗场
- OJ热血格斗场
- 冷血格斗场
- openjudge 热血格斗场
- 冷血格斗场
- 冷血格斗场 (map)
- openjudge 4:热血格斗场
- openjudge 3344 冷血格斗场
- openjudge3344 冷血格斗场 解题报告
- Cpp环境【OpenJudge3344】【Vijos2874】冷血格斗场
- 第十三周作业:冷血格斗场
- map的应用 热血格斗场
- openjudge 冷血格斗场(map)
- Vue.js结合vue-router和webpack编写单页路由项目
- 《Android 源码设计模式解析与实战》学习笔记
- 设计模式学习(十二)————建造者模式
- float,double等精度丢失问题(详)
- 吾爱破解—破解备份
- STL格斗场
- 设计模式学习(十三)————观察者模式
- 自定义SQLite数据文件存放的位置
- 广播(broadcast)
- JS中string方法中常用方法之五:String.prototype.slice()
- MySQL在Windows中绿色版安装和简单配置
- tomcat相关问题
- objective-c 学习之旅之BOOL类型
- 单链表_生成100个随机数_查询并输出大于K的数