快排模板2020 7 3

2021-10-07 17:56:10 字數 1019 閱讀 4875

時間限制: 1 sec  記憶體限制: 64 mb

提交狀態

題目描述

某次科研調查時得到了n個自然數,每個數均不超過1500000000 (1.5×109)。已知不相同的數不超過10000個,現在需要統計這些自然數各自出現的次數,並按照自然數從小到大的順序輸出統計結果。

輸入第1行是整數n,表示自然數的個數;

第2~n+l每行乙個自然數。

輸出共m行(m為n個自然數中不相同數的個數),按照自然數從小到大的順序輸出。每行輸出兩個整數,分別是自然數和該數出現的次數,其間用乙個空格隔開。

樣例輸入 copy

824

245100

2100

樣例輸出 copy

2 3

4 25 1

100 2

提示

40%的資料滿足:1≤n≤1000;

80%的資料滿足:1≤n≤50000,

100%的資料滿足:1≤n≤200000,每個數均不超過1.5×109。

#pragma gcc optimize(1)

#pragma gcc optimize(2)

#pragma gcc optimize(3,"ofast","inline")

#include #include using namespace std;

typedef long double ll;

int a[200005];

void quick_sort(int start,int last)

quick_sort(1,n);

int cnt=1;

//for(int i=1;i<=n;i++)

// printf("%d ",a[i]);

// puts("");

for(int i=2;i<=n+1;i++)

else

}// printf("%d",a[n],cnt);

return 0;

}

快排模板題打卡

模板題 快排的時間複雜度是 o n log2 n o nlog 2 n o nlog 2 n 思想 基於分治 step1 選取分界點x 陣列中的乙個數 step2 調整區間 使得左邊的數均小於等於x,右邊的數均大於等於x step3 遞迴處理左右兩段,分別排好序。模板 includeusing na...

C C 呼叫快排的模板

在進行c c 程式設計的時候,c c 的庫函式中已經提供了快速排序法的函式qsort,我們只需要呼叫它就可以了。qsort函式在標頭檔案stdlib.h中。要使用qsort函式,就必須加 include 對c語言來說 或加入 include 對c 來說 下面是7種快排呼叫方法 注意下面的都是從小到大...

C 中快排模板呼叫

在現在的各種內部排序演算法中快速排序被認為是效率最高的排序演算法 快速排序原理 因此在c 的庫函式中已經封裝了快排函式。所以在平時的程式設計,我們可以直接呼叫這已庫函式,而不必自己去實現。這樣一方面由快排保證了程式的效率,另一方面也保證程式的正確性和可讀性。呼叫c 快排的庫函式的格式 假設待排序的陣...