【CDOJ 1329】卿学姐与魔法
来源:互联网 发布:好用的面霜干皮 知乎 编辑:程序博客网 时间:2024/06/02 09:29
http://acm.uestc.edu.cn/#/problem/show/1329
先把A[i]+B[0]拖进一个优先队列,然后每次取出最小值A[i]+B[k],同时把A[i]+B[k+1]扔进去,然后直到取出n个数。
#include <iostream>#include <algorithm>#include <cstdio>#include <cmath>#include <cstring>#include <queue>#include <stack>#include <map>#include <vector>#include <cstdlib>#include <string>#define PI acos((double)-1)#define E exp(double(1))using namespace std;int a[100000],b[100000];int c[100000];int main (void){ int n; cin>>n; for(int i=1;i<=n;i++) scanf("%d",&a[i]); sort(a+1,a+n+1); for(int i=1;i<=n;i++) scanf("%d",&b[i]); sort(b+1,b+n+1); priority_queue<pair<int,int> >s; for(int i=1;i<=n;i++) s.push(make_pair(-(a[i]+b[1]),1)); for(int i=1;i<=n;i++) { pair<int,int> temp=s.top();s.pop(); c[i]=-temp.first; int k=temp.second; if(temp.second<n)s.push(make_pair(-(-temp.first-b[k]+b[k+1]),k+1)); } for(int i=1;i<=n;i++) printf("%d\n",c[i]); return 0;}
再贴一份代码(哦,顺便这道题可以验证cin cout 和scanf printf的快慢~ 嗯,而且是关闭同步优化过的cin cout)
(换成关闭同步的cin cout在T11挂掉)
#include<cstdio>#include<iostream>#include<cstring>#include<algorithm>#include<cmath>#include<queue>using namespace std;int n;typedef pair<int,int> pii;priority_queue<pii , vector<pii>, greater<pii> > s;#define maxn 100010int a[maxn],b[maxn];int ans[maxn];int main(){// ios::sync_with_stdio(false);// cin>>n; scanf("%d",&n); for(int i=1;i<=n;i++)scanf("%d",&a[i]);//cin>>a[i]; for(int i=1;i<=n;i++)scanf("%d",&b[i]);//cin>>b[i]; sort(a+1,a+1+n); sort(b+1,b+1+n); for(int i=1;i<=n;i++)s.push(make_pair(a[i]+b[1],1)); int k = 0; for(int i=1;i<=n;i++) { ans[i] = s.top().first; k = s.top().second; s.pop(); if(k<n)s.push(make_pair(ans[i]-b[k]+b[k+1],k+1)); } for(int i=1;i<=n;i++)printf("%d\n",ans[i]);//cout<<ans[i]<<endl; return 0;}
1 0
- 【CDOJ 1329】卿学姐与魔法
- CDOJ 1329 卿学姐与魔法(优先队列)
- 2016 UESTC Training for Data Structures D - 卿学姐与魔法 CDOJ 1329 堆
- 【cdoj 1349】卿学姐与魔法 (优先队列)
- UESTC 1329 卿学姐与魔法
- cdoj-1324-卿学姐与公主
- CDOJ1329 卿学姐与魔法
- 【CDOJ 1341】卿学姐与城堡的墙
- CDOJ 1324 卿学姐与公主(分块)
- CDOJ 卿学姐与公主 【分块 入门题】
- CDOJ 1324 卿学姐与公主 分块法
- CDOJ 1324 卿学姐与公主(分块)
- CDOJ--卿学姐与基本法(线段树+离散化+区间查询)
- CDOJ 1325 卿学姐与基本法 (离散化+区间修改)
- 【cdoj 1325】卿学姐与基本法 离散化+线段树
- 【CDOJ 1328】卿学姐与诡异村庄 【并查集】
- CDOJ 1325 卿学姐与基本法(离散化+线段树)
- CDOJ 1324 卿学姐与公主 (分块or线段树)
- select、poll、epoll之间的区别总结
- mysql密码忘记,强制修改
- 【Linux】CentOS7 常用命令集合
- 一个expect su实现输入su命令之后自动填写密码的功能
- Java基础语法
- 【CDOJ 1329】卿学姐与魔法
- 内经-移精变气论
- TextView的方法
- web框架学习前复习——http协议
- C++11:基于std::unordered_map和共享锁构建线程安全的map
- 面试总结(堆、UDP、voliate)
- jsp+servlet+Cookie实现记住密码功能
- 【总结】《牛腩》完成篇
- Webstorm常用快捷键