#42079: 怎麼可能不開陣列


JengSwan (Jeng Swan)

學校 : 國立臺南女子高級中學
編號 : 255594
來源 : [123.252.108.9]
最後登入時間 :
2024-11-20 08:50:54
g732. 110北二3.尋找中位數 -- 110北二區桃竹苗資訊學科能力複賽 | From: [114.40.91.145] | 發表日期 : 2024-09-24 20:44

這樣竟然RE,疑似陣列開太大,請問不開陣列怎麼可能排序找中位數??

程式:

#include <iostream>
#include <algorithm>
using namespace std;
int main() {
    cin.tie(0);
    ios::sync_with_stdio(0);
    int n;
    cin >> n;
    int a[n];
    for (int i = 0 ; i < n ; i ++) {
        cin >> a[i];
    }
    sort(a, a+n);
    cout << a[n/2] << "\n";
    return 0;
}

 

 
#42081: Re: 怎麼可能不開陣列


liaoweichen1024@gmail.com (M_SQRT)

學校 : 新北市立新莊高級中學
編號 : 195452
來源 : [150.117.3.92]
最後登入時間 :
2024-11-21 20:54:31
g732. 110北二3.尋找中位數 -- 110北二區桃竹苗資訊學科能力複賽 | From: [150.117.3.92] | 發表日期 : 2024-09-24 22:14

這樣竟然RE,疑似陣列開太大,請問不開陣列怎麼可能排序找中位數??

程式:

#include
#include
using namespace std;
int main() {
    cin.tie(0);
    ios::sync_with_stdio(0);
    int n;
    cin >> n;
    int a[n];
    for (int i = 0 ; i < n ; i ++) {
        cin >> a[i];
    }
    sort(a, a+n);
    cout << a[n/2] << "\n";
    return 0;
}

 


$1\le s_i\le 500$
可以根據這個條件思考看看有什麼處理方法。

 

 

 
ZeroJudge Forum