CodeForces 195B After Training(STL)
来源:互联网 发布:mac系统如何进入终端 编辑:程序博客网 时间:2024/06/05 15:01
题意:有n个球,m个篮子, 要把这n个球放进这些篮子,首先放篮子中求最少的篮子,若数量相同再放距离中间篮子最近的,若距离相同放篮子编号小的。
分析:这道题可以用线段树,set,优先队列 都可以搞
#include <iostream>#include <stdio.h>#include <math.h>#include <algorithm>#include <queue>#include <stack>#include <vector>#include <string>#include <string.h>#include <map>#include <set>using namespace std;#define maxn 100005*3#define inff 1<<30struct node{ int val,dis,id; node(int val,int dis,int id):val(val),dis(dis),id(id){} friend bool operator <(node x,node y) { if(x.val<y.val)return true; else if(x.val == y.val) { if(x.dis<y.dis)return true; else if(x.dis==y.dis) { if(x.id<y.id)return true; else return false; } else return false; } else return false; }};int abs(int x){ if(x<0)return -x; else return x;}int n,m;int a[maxn];int main(){ set<node>s; int i; while(scanf("%d%d",&n,&m)!=EOF) { s.clear(); int mid1,mid2; if(m%2!=0) { mid1=mid2=(m+1)/2; } else { mid1=m/2; mid2=mid1+1; } for(i=1;i<=m;i++) { node tx(0,min(abs(mid1-i),abs(mid2-i)),i); s.insert(tx); } for(i=1;i<=n;i++) { node tx=*s.begin(); s.erase(s.begin()); a[i]=tx.id; tx.val++; s.insert(tx); } for(i=1;i<=n;i++) { printf("%d\n",a[i]); } } return 0;}
0 0
- CodeForces 195B After Training(STL)
- Codeforces 195B After Training 线段树的维护
- K - After Training CodeForces 195B-找规律
- Codeforces Round #123 (Div. 2) B - After Training
- B. After Training
- Codeforces 895B (stl binary search)
- codeforces 631B (STL set)
- CodeForces 114B 【STL应用】
- codeforces GYM 101431B (STL)
- Codeforces Round #315 (Div. 2) B. Inventory (STL)
- Codeforces Round #294 (Div. 2)(B)STL multiset
- 【CodeForces】599B - Spongebob and Joke(STL)
- 【CodeForces】599B - Spongebob and Joke(STL)
- CodeForces 501B Misha and Changing Handles(STL map)
- ecjtu-summer training #1 B(CodeForces 651B)
- After Summer Training.
- Codeforces 644B Processing Queries【STL】
- Educational Codeforces Round 12 B STL vector
- ADT+SDK+JDK+elipse的理解
- 实时监听textarea并限制最大字符数
- Linux 文件权限简单说明
- Apache2.4中出现You don't have permission to access / on this server.
- Python3 列表List或元组tuple中元素分解(赋值操作)
- CodeForces 195B After Training(STL)
- iOS应用程序生命周期(前后台切换,应用的各种状态)详解
- 文件上传保存没有Nginx最好放Tomcat里面
- JScrollPane中添加JPanel不出现滚动条
- 9. 斐波那契数列
- 【ecos】编码规范
- 线性回归、逻辑回归等问题对比分析总结
- 多维数组和指针操作
- tree型的json数据按照json的某个字段对子节点进行排序