51nod 1420 數袋鼠好有趣

2021-08-08 01:34:36 字數 877 閱讀 4742

1420 數袋鼠好有趣

codeforces

基準時間限制:1 秒 空間限制:131072 kb 分值: 40 

難度:4級演算法題

有n只袋鼠。每只袋鼠的大小用乙個整數表示。乙隻小袋鼠能裝進乙隻大袋鼠的條件是,大袋鼠的大小至少是小袋鼠的兩倍。

每只大袋鼠最多可以裝乙隻袋鼠。小袋鼠被裝進大袋鼠之後就不能再裝其它的袋鼠了。

小袋鼠被裝進大袋鼠之後就不能被我們看見了。請找出乙個裝袋鼠的方案,使得被看見的袋鼠最少。

input

單組測試資料。

第一行包含乙個整數n(1≤n≤5*10^5)。

接下來n行,每行乙個整數si,表示第i只袋鼠的大小 (1≤si≤10^5)。

output

輸出乙個整數,即最少能看見的袋鼠數量。
input示例

825

7698

42

output示例

5
簡單貪心

#include#include#includeusing namespace std;

const int maxn=5*1e5+10;

int num[maxn];

int main(){

int n;

cin>>n;

for(int i=1;i<=n;i++) scanf("%d",&num[i]);

sort(num+1,num+1+n);

int ans=n;

for(int i=n/2;i>=1;i--)

if(num[i]*2<=num[ans])

ans--;

cout<

51Nod 1420 數袋鼠好有趣

有n只袋鼠。每只袋鼠的大小用乙個整數表示。乙隻小袋鼠能裝進乙隻大袋鼠的條件是,大袋鼠的大小至少是小袋鼠的兩倍。每只大袋鼠最多可以裝乙隻袋鼠。小袋鼠被裝進大袋鼠之後就不能再裝其它的袋鼠了。小袋鼠被裝進大袋鼠之後就不能被我們看見了。請找出乙個裝袋鼠的方案,使得被看見的袋鼠最少。input 單組測試資料。...

51Nod 1420 數袋鼠好有趣

1420 數袋鼠好有趣 基準時間限制 1 秒 空間限制 131072 kb 分值 40 難度 4級演算法題 有n只袋鼠。每只袋鼠的大小用乙個整數表示。乙隻小袋鼠能裝進乙隻大袋鼠的條件是,大袋鼠的大小至少是小袋鼠的兩倍。每只大袋鼠最多可以裝乙隻袋鼠。小袋鼠被裝進大袋鼠之後就不能再裝其它的袋鼠了。小袋鼠...

51nod 1420 數袋鼠好有趣(貪心)

思路 排序,然後讓大的盡量裝大的就好了嘛 includeusing namespace std const int maxn 5 1e5 7 int a maxn int vis maxn int main printf d n ans 1420 數袋鼠好有趣 codeforces 基準時間限制 1...