Codeforces #219 (Div. 2) C. Counting Kangaroos is Fun
2013-12-14 13:35
429 查看
C. Counting Kangaroos is Fun
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output
There are n kangaroos with pockets. Each kangaroo has a size (integer number). A kangaroo can go into another kangaroo's pocket if and only
if the size of kangaroo who hold the kangaroo is at least twice as large as the size of kangaroo who is held.
Each kangaroo can hold at most one kangaroo, and the kangaroo who is held by another kangaroo cannot hold any kangaroos.
The kangaroo who is held by another kangaroo cannot be visible from outside. Please, find a plan of holding kangaroos with the minimal number of kangaroos who is visible.
Input
The first line contains a single integer — n (1 ≤ n ≤ 5·105).
Each of the next n lines contains an integer si —
the size of the i-th kangaroo (1 ≤ si ≤ 105).
Output
Output a single integer — the optimal number of visible kangaroos.
Sample test(s)
input
output
input
output
一道让我想吐血的题,信心满满的以为过了,最后测试的时候wa掉了。。。测试数据达到500000的时候错了,实在不知道是什么原因,检查也没查出来。就这样吧
题意是给你n个袋鼠以及对应大小,把较小的放到较大的口袋里,判断最后头在外面的松鼠最少多少只
解题思路是快排,之后按大小关系分两排,上面一排个数为n/2,把上面一排的和下面一排的对应比较,如不满足二倍大小关系则接着看下一排的下一只是否满足,若比较到j==n,则判断结束。
贴上代码:
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output
There are n kangaroos with pockets. Each kangaroo has a size (integer number). A kangaroo can go into another kangaroo's pocket if and only
if the size of kangaroo who hold the kangaroo is at least twice as large as the size of kangaroo who is held.
Each kangaroo can hold at most one kangaroo, and the kangaroo who is held by another kangaroo cannot hold any kangaroos.
The kangaroo who is held by another kangaroo cannot be visible from outside. Please, find a plan of holding kangaroos with the minimal number of kangaroos who is visible.
Input
The first line contains a single integer — n (1 ≤ n ≤ 5·105).
Each of the next n lines contains an integer si —
the size of the i-th kangaroo (1 ≤ si ≤ 105).
Output
Output a single integer — the optimal number of visible kangaroos.
Sample test(s)
input
8 2 5 7 6 9 8 4 2
output
5
input
8
9
1
6
2
6
58
3
output
5
一道让我想吐血的题,信心满满的以为过了,最后测试的时候wa掉了。。。测试数据达到500000的时候错了,实在不知道是什么原因,检查也没查出来。就这样吧
题意是给你n个袋鼠以及对应大小,把较小的放到较大的口袋里,判断最后头在外面的松鼠最少多少只
解题思路是快排,之后按大小关系分两排,上面一排个数为n/2,把上面一排的和下面一排的对应比较,如不满足二倍大小关系则接着看下一排的下一只是否满足,若比较到j==n,则判断结束。
贴上代码:
#include <stdio.h> #include <algorithm> using namespace std; #define max 510000 #define rep(n) for(int i=0; i<n; i++) int a[max]; int main(void){ int n; while(scanf("%d",&n)!=EOF){ int count = 0; int flag = 0; rep(n) scanf("%d",&a[i]); sort(a, a+n); int j = n/2; rep(n/2){ while(2*a[i] > a[j]){ if(j == n){ flag = 1; break; } j++; } if(flag) break; count++; } printf("%d\n",n-count); } return 0; }
相关文章推荐
- codeforces B. Making Sequences is Fun 解题报告
- 贪财的富翁
- 【指针】指向数组的指针--(课堂例)为什么p=a不对?
- java中的ConcurrentModificationException
- sqlserver数据库附加分离备份还原命令
- oracle trace文件解读
- SCI 论文常用经典句型
- PhotoSwipe动态加载图片
- UCS unicode UTF-8 UTF-16 UTF-32
- xdjm们,请帮我的好朋友(马云、郭台铭、马英九接见过的人)投票: http://now.taobao.com/dream-career.php?qq-pf-to=pcqq.group
- Fiddler 日志
- 我的歌声里(程序员)
- JAVA 学习资源
- java 实现html模板导出pdf的方式
- 多线程共享数据的更新的解决办法
- C# tostring 格式化输出 (转)
- 第16周项目3:填空学指针
- 使用apt-mirror建立本地debian仓库源
- java通过jacob实现对com组件的调用
- STM32F407的时钟配置(system_config.c浅见)