TRAOGIAI - Trao giải

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Go, Java, Pascal, Perl, PHP, Python, Ruby, Rust, Scratch, Swift

Kỳ thi học sinh giỏi khối ~10~ môn Tin học năm nay có ~n~ học sinh tham gia với tổng điểm của các học sinh lần lượt là các số tự nhiên ~d_1, d_2, …, d_n~. BTC quyết định chọn các học sinh để trao giải theo nguyên tắc sau: Đầu tiên chọn ~[\frac{n}{2}]~ (phần nguyên của ~\frac{n}{2}~) số học sinh có điểm từ cao xuống thấp, sau đó chọn thêm những học sinh bằng điểm với học sinh có điểm thấp nhất trong số này. Em hãy giúp BTC tính số lượng học sinh có giải.

Input

  • Dòng đầu chứa số nguyên dương ~n~;
  • Dòng thứ hai chứa ~n~ số tự nhiên ~d_1, d_2, …, d_n~.Hai số liên tiếp trên một dòng được ghi cách nhau một dấu cách.

Giới hạn:

  • ~2 ≤ n ≤ 10^5; 0 ≤ d_i ≤ 10^6~.

Output

  • Một số nguyên duy nhất là số học sinh có giải.

Sample

Input #1
5
98 97 100 98 98
Output #1
4

Hint

Xem xét #1:

  • ~[\frac{n}{2}] = [\frac{5}{2}] = 2~. Hai học sinh được chọn có điểm từ cao xuống thấp là ~100~ và ~98~, tiếp theo, còn ~2~ học sinh cùng đạt ~98~ điểm nữa cũng được chọn. Vậy có ~4~ học sinh có giải.

Problem source: Chuyên Sơn La Online Judge


Bình luận

Hãy đọc nội quy trước khi bình luận.



  • 0
    thangok  đã bình luận lúc 22, Tháng 4, 2024, 14:23

    include<bits/stdc++.h>

    using namespace std; int main(){

    ios_base::sync_with_stdio(false);
    cin.tie(0);cout.tie(0);
    int n;
    cin>>n;
    int a[n];
    for(int i=1;i<=n;i++){
        cin>>a[i];
    }
    sort(a+1,a+1+n,greater<int>());
    int dem=n/2;
    for(int i=(n/2)+1;i<=n;i++)
    {
        if(a[n/2]==a[i]) dem++;
    }
    cout<&lt;dem;
    return 0;
    

    }


  • -1
    hoangvanthong  đã bình luận lúc 3, Tháng 3, 2024, 13:20

    include <bits/stdc++.h>

    using namespace std;

    int main() { int n; cin>>n; int dem=n/2; int a[n]; for(int i=1; i<=n; i++) cin>>a[i]; sort(a+1,a+1+n, greater<int>()); for(int i=n/2+1; i<=n; i++){ if(a[n/2]==a[i]){ dem++; } } cout<<dem;

    }


  • 0
    taco29  đã bình luận lúc 17, Tháng 2, 2024, 3:12

    test 2 la gi vay nhi


  • 3
    hohoanghai5042011  đã bình luận lúc 15, Tháng 2, 2024, 7:35

    #include <bits/stdc++.h>

    using namespace std; int n,a[1000006],res; int main() { cin>>n; for(int i=1; i<=n; i++) cin>>a[i]; sort(a+1,a+n+1); int m=n/2; res+=m; int i=n-m+1; while(a[i]==a[i-1]) { i--; res++; } cout<<res; }


  • -2
    Minh_Bijan_123  đã bình luận lúc 7, Tháng 1, 2024, 11:04

    .


  • -8
    2010_NguyenMinhKhang  đã bình luận lúc 18, Tháng 10, 2023, 11:41

    Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.


    • -8
      Tuan_hung_2206  đã bình luận lúc 22, Tháng 10, 2023, 10:13

      Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.