Thứ Tư, 27 tháng 4, 2022

CAKES C++

#include <bits/stdc++.h>

using namespace std;

int n;
int ok[1000005] = {0};
int a[1000005];

void nhap(){
    scanf("%d", &n);
    for ( int i = 1; i <= n; i++ ){
        scanf("%d", &a[i]);
    }
}

bool check(int x, int y){
    if ( x > y ) return true;
    return false;
}

void xuly(){
    sort(a+1, a+1+n, check);
    int j = n/2+1;
    int f = n;
    for ( int i = 1; i <= n/2; i++ ){
        while(j < n && (ok[j] == 1 || 2*a[j]>a[i])){
            j++;
        }
        if (ok[j] == 0 && 2*a[j] <= a[i]){
            ok[i] = 1;
            ok[j] = 1;
            f--;
        }
    }
    cout << f << endl;
}

int main(){
    freopen("CAKES.INP", "r", stdin);
    freopen("CAKES.OUT", "w", stdout);
    nhap();
    xuly();
}

Không có nhận xét nào:

Đăng nhận xét

Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.