8 28 2019CSP S1錯題整理

2021-10-23 22:30:53 字數 1232 閱讀 1566

第 20 題 (4 分)

#include

using

namespace std;

int n;

int a[

100]

;int

main()

return0;

}

若輸入的 aa 陣列是乙個嚴格單調遞增的數列,此程式的時間複雜度是

【解析】 當a 陣列是乙個嚴格單調遞增的數列時,while()迴圈一次都不執行,所以程式的時間複雜度是:o(n

)o(n)

o(n)

第 21 題 (4 分)

最壞情況下,此程式的時間複雜度為:

【解析】 最壞情況下,當a 陣列是乙個嚴格單調遞減的數列時,while()會執行n−1,n−2,n−3…,所以程式的時間複雜度是:o(n

2)

o(n^2)

o(n2

)

第 25 題 (1 分)

#include

using

namespace std;

const

int maxn =

1000

;int n;

int fa[maxn]

, cnt[maxn]

;int

getroot

(int v)

intmain()

int ans =0;

for(

int i =

0; i < n -1;

++i)

cout << ans << endl;

return0;

}

判斷正誤 若輸入的 a 和 b 值均在 [0,

n−1]

[0, n-1]

[0,n−1

] 的範圍內,則對於任意 0≤i

<

n0 \le i0≤

i<

n,都有 1≤c

nt[i

]≤

n1\le cnt[i] \le n

1≤cnt[

i]≤n

當然錯了

它合併的時候沒有判斷

MFC所遇到的錯(1)

1,error lnk2001 error lnk2001是計算機程式設計人員初學時常會碰到的問題。多是因為執行環境問題 程式沒有新增必要的庫而導致。可通過對系統重新設定 新增庫檔案或者新增 來解決。例如,你用vc建了乙個控制台程式,它的入口函式應該是main,而你使用了winmain。或者,你用v...

易錯1(字元)

在定義char時,要注意回車也算!輸入三個字元後,按各字元的ascii碼從小到大的順序輸出這三個字元。input 輸入資料有多組,每組佔一行,有三個字元組成,之間無空格。output 對於每組輸入資料,輸出一行,字元中間用乙個空格分開。sample input qwe asdzxc sample o...

csp s102 T1 你相信引力嗎

先考慮沒有相同數的情況,那麼每個點會和左邊第乙個比它大的和右邊第乙個比它大的造成1的貢獻,此後再無貢獻 因為沒有相同數所以一對數一定有乙個大的有乙個小的對於小的來說另乙個端點再移動的話就一定不會危險 所以是對的 由於有環,考慮拆掉,正常的方法是在最後乙個之後把串重複一遍 然後就會想到單調佇列 棧 但...