目錄
問題 a: 習題5-9 完數
問題 b: 求多次落地彈球高度
問題 c: 二分搜尋(遞迴)
問題 d: 二分搜尋(非遞迴)
問題 e: 陣列合併
問題 f: 歸併排序
問題 g: 線性搜尋
題目描述乙個數如果恰好等於它的因子和,這個數就稱為「完數」。例如,6的因子為1,2,3,而6=1+2+3,所以6是「完數」。
程式設計輸出1000以內的所有完數,每個完數輸出一行,並按下面的格式輸出其因子:
6 its factors are 1,2,3輸入無
輸出每個完數輸出一行,並按下面的格式輸出其因子:
? its factors are ?,?,?
樣例輸入 copy
樣例輸出 copy無
提示6 its factors are 1,2,3
28 its factors are 1,2,4,7,14
496 its factors are 1,2,4,8,16,31,62,124,248
因子包含1但不包含其本身。
#includeusing namespace std;
int main()
printf("length=%.4f\nhigh=%.4f\n",b,n);
}
題目描述使用遞迴演算法,實現二分搜尋。
輸入多組資料輸入,每組第乙個數字為陣列的長度n,然後輸入n個整數,最後輸入待查詢的值。
輸出輸出待查詢值所在的位置,如果沒有找到,則返回-1。
樣例輸入 copy
樣例輸出 copy3 1 2 3 2
4 0 1 3 4 2
2
-1
#includeusing namespace std;
int aa(int a,int left,int right,int b)
else
return -1;
}int main()
cin>>b;
sort(a,a+n);
int s=aa(a,0,n,b);
if(s>=0)
cout《題目描述
使用非遞迴演算法,實現二分搜尋。
輸入多組資料輸入,每組第乙個數字為陣列的長度n,然後輸入n個整數,最後輸入待查詢的值。
輸出輸出待查詢值所在的位置,如果沒有找到,則返回-1。
樣例輸入 copy
3 1 2 3 2
4 0 1 3 4 2
樣例輸出 copy
2
-1
#includeusing namespace std;
int aa(int a,int left,int right,int b)
return -1;
}int main()
cin>>b;
sort(a,a+n);
int s=aa(a,0,n,b);
if(s>=0)
cout《題目描述
編寫乙個程式,將兩個有序陣列合併成乙個更大的有序陣列,要求時間複雜度為o(n)。
輸入多組資料輸入,每組輸入包括兩行,每行第乙個數字為陣列長度n,然後輸入n個有序整數。
輸出輸出合併後的陣列(公升序),每組輸出用乙個空行隔開。
樣例輸入 copy
3 1 3 5
3 2 4 6
2 1 2
4 3 4 5 6
樣例輸出 copy
1 2 3 4 5 6
1 2 3 4 5 6
#includeusing namespace std;
void aa(int a,int n,int b,int m,int c)
cin>>m;
int b[m];
for(int i=0;i>b[i];
}int s=n+m;
int c[s];
aa(a,n,b,m,c);
for(int i=0;i題目描述
編寫乙個程式,使用分治策略實現二路歸併排序(公升序)。
輸入多組輸入,每組第乙個數字為陣列長度,然後輸入乙個一維整型陣列。
輸出輸出排序之後(公升序)的一維整型陣列,每組輸出佔一行。
樣例輸入 copy
6 1 8 6 5 3 4
5 12 42 2 5 8
樣例輸出 copy
1 3 4 5 6 8
2 5 8 12 42
#includeusing namespace std;
void merge(int c,int d,int l,int m,int r)
else
for(int q=i;q<=m;q++)
}void mergepass(int x,int y,int lx,int ly,int s)
if(i+s>n)
mergesort(a,n);
for(int i=0;i題目描述
請編寫乙個程式,輸入包含n(n<=10000)個整數的數列s以及包含q個(q<=500)不重複整數的數列t,輸出既包含於t也包含於s的整數的個數c。s、t中的元素均大於0且小於109,t的元素不重複。
輸入第一行輸入n,第二行輸入代表s的n個整數,第三行輸入q,第四行輸入代表t的q個整數。
輸出用1行輸出c。
樣例輸入 copy
51 2 3 4 5
33 4 1
樣例輸出 copy
3
#include#include using namespace std;
int aa(int a,int left,int right,int b)
return -1;
}int main()
sort(a,a+n);
cin>>m;
int b[m];
for(int i=0;i>b[i];
}int s=0;
for(int i=0;i}
cout<}
return 0;
}
2019 SCU 計科筆試
輸入乙個4位數,求4位數組成的新的最大的4位數和最小的4位數的差。unsigned differfrommaxmin unsigned num 思路 很簡單,將各位分開 排序,逆序最大 順序最小 code 19 輸入乙個4位數,求4位數組成的新的最大的4位數和最小的4位數的差。unsigned di...
計科院20201011藍橋訓練題解
題目均 於dotcpp bin巨出的題就是難啊啊啊 小明發現49很有趣,首先,它是個平方數。它可以拆分為4和9,拆分出來的部分也是平方數。169也有這個性質,我們權且稱它們為 拼接平方數。100可拆分1 00,這有點勉強,我們規定,0 00 000 等都不算平方數。小明想 還有哪些數字是這樣的呢?你...
計網 17差錯檢測和糾正技術
檢錯重發 detect and retransmission 檢測到傳送方報文受損,則通知傳送方重傳副本 差錯率低效果好 適用場合 檢錯重發適合鏈路差錯率很低的場合,如有線通訊前向糾錯 forward error correction,fec 糾錯通過額外資訊 預先 進行 時效性好 適用場合 前向糾...