演算法基礎訓練(二)

2021-07-09 09:22:08 字數 737 閱讀 8302

1.統計逆序對數 (10分)

c時間限制:1 毫秒 |  c記憶體限制:1 kb

題目內容:

設a[1..n]是乙個包含n個非負整數的陣列。

如果在i〈 j的情況下,有a[i]〉a[j],則(i,j)就稱為a中的乙個逆序對。

要解決的問題是,給出乙個數列,求出這個數列包含多少個逆序對

輸入描述

有多組測試資料,每組資料佔一行。

首先輸入乙個整數n表示陣列元素有n個,接下來輸入n個整數

n<=50 (無奈痛苦默默改小了資料...)(再次痛苦默默無奈再改小資料...)

輸出描述

輸出乙個整數。

輸入樣例

5 3 1 4 5 2

輸出樣例

4

hint:(樣例解釋,不需要輸出)

陣列(3,1,4,5,2)的「逆序對」有<3,1>,<3,2><4,2><5,2>,共4個。

#include

using namespace std;

int check(int b,int m,int n) }

return count; }

int main()

for(int i=0;is=s+check(a,i,n);

//cout<}

cout<}

return 0; }

演算法基礎訓練題 二)

2.歸併排序 10分 c時間限制 1 毫秒 c記憶體限制 1 kb 輸入描述 多組測試資料。首先輸入乙個整數n表示陣列元素個數n 然後輸入n個整數 輸出描述 輸出n個整數在一行,用空格隔開 輸入樣例 5 5 4 3 2 1 輸出樣例 1 2 3 4 5 如下 歸併排序 mergesort 是建立在歸...

Python基礎訓練(二)

1.楊輝三角 楊輝三角形又稱pascal三角形,它的第i 1行是 a b i的展開式的係數。它的乙個重要性質是 三角形中的每個數字等於它兩肩上的數字相加。下面給出了楊輝三角形的前4行 1 11 2 1 1 3 3 1 給出n,輸出它的前n行。輸入格式 輸入包含乙個數n。輸出格式 輸出楊輝三角形的前n...

heu acm基礎訓練 1001

哈爾濱工程大學 online judge acm訓練之分治演算法 原題大意 求a b,之間的數有多少個1,包括a,b.這題典型的分治演算法 舉例說明 以197為例 那麼我們將其分為個位,十位,個位7上有乙個,那麼在190 197上有7 1個 然後整十位上的為18,即197 10 1,然後其權值將變為...