数袋鼠好有趣
来源:互联网 发布:阿里移动推荐算法总结 编辑:程序博客网 时间:2024/05/01 15:09
这个题目需要将袋鼠按照体型从大到小排序之后,将前一半体型较大的与后面一半体型较小的比较,如果前者是后者体型的两倍(或更大)就将袋鼠的数目减一,最后输出剩余袋鼠数量
这时我用的几组测试数据:
6
9 8 6 4 3 1 输出 3
5
9 4 1 1 1 输出3
有n只袋鼠。每只袋鼠的大小用一个整数表示。一只小袋鼠能装进一只大袋鼠的条件是,大袋鼠的大小至少是小袋鼠的两倍。
每只大袋鼠最多可以装一只袋鼠。小袋鼠被装进大袋鼠之后就不能再装其它的袋鼠了。
小袋鼠被装进大袋鼠之后就不能被我们看见了。请找出一个装袋鼠的方案,使得被看见的袋鼠最少。
第一行包含一个整数n(1≤n≤5*10^5)。
接下来n行,每行一个整数si,表示第i只袋鼠的大小 (1≤si≤10^5)。
825769842
5队列实现:
#include<stdio.h>#include<queue>#include<algorithm>using namespace std;bool cmp(int a,int b){return a>b;}int reco[500005]={0};int main(){int n,num,i,cnt=0;scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%d",&reco[i]);}sort(reco+1,reco+n+1,cmp);queue<int> q_max,q_min;if(n&1)num=n+1;elsenum=n;for(i=1;i<=num/2;i++)q_max.push(reco[i]);for(;i<=n;i++)q_min.push(reco[i]);while(1){while(q_max.front()>=2*q_min.front()){cnt++;q_max.pop();q_min.pop();if(q_max.empty()||q_min.empty())break;}if(q_max.empty()||q_min.empty())break;while(q_max.front()<2*q_min.front()){cnt++;q_min.pop();if(q_max.empty()||q_min.empty())break;}if(q_max.empty()||q_min.empty())break;}printf("%d",q_max.size()+q_min.size()+cnt);return 0;}数组实现:
#include<stdio.h>#include<stdlib.h>#include<queue>#include<algorithm>using namespace std;bool cmp(int a,int b){return a>b;}int reco[500005]={0};int main(){int n,num,i,j,ans;scanf("%d",&n);for(i=1;i<=n;i++){scanf("%d",&reco[i]);} sort(reco+1,reco+n+1,cmp); num=n,ans=n; if(num&1) num++; for(i=num/2+1,j=1;j<=num/2&&i<=n;i++) { if(reco[j]>=2*reco[i]) { j++; ans--; } } printf("%d",ans);return 0;}
阅读全文
0 0
- 数袋鼠好有趣
- 数袋鼠好有趣
- 1420 数袋鼠好有趣
- 1420 数袋鼠好有趣
- 51nod 1420 数袋鼠好有趣
- 51nod1420 数袋鼠好有趣
- 51nod 1420 数袋鼠好有趣
- 51nod oj 1420 数袋鼠好有趣【贪心】
- 51Nod-1420-数袋鼠好有趣
- 51nod 1420 数袋鼠好有趣【贪心】
- 51nod 1420 数袋鼠好有趣(贪心)
- 51nod 1420 数袋鼠好有趣(贪心)
- 呵呵,好有趣(一)
- 有趣的数
- NYOJ - 有趣的数
- NYOJ85 有趣的数
- 有趣的数
- 85 有趣的数
- 一个简单的扒皮
- python3 闭包的两种情况
- Java堆和栈
- Makefile基础教程 9
- git 冲突解决技巧
- 数袋鼠好有趣
- 在CentOS7下将nginx添加到systemctl
- 基础代码-维护图的连通性
- C++连接Mysql
- Makefile基础教程 10
- iOS学习笔记-133.RunLoop01——基础知识
- HDU 6201 transaction transaction transaction(树上dfs/费用流)
- 洛谷 P1967 货车运输(Kruskal最大生成树&&倍增lca)
- hadoop初识之十一:mapreduce编写格式与示例, 并在yarn上运行