1.怪盜基德的滑翔翼
怪盜基德是一個(gè)充滿傳奇色彩的怪盜,專門以珠寶為目標(biāo)的超級(jí)盜竊犯。而他最為突出的地方,就是他每次都能逃脫中村警部的重重圍堵,而這也很大程度上是多虧了他隨身攜帶的便于操作的滑翔翼。
有一天,怪盜基德像往常一樣偷走了一顆珍貴的鉆石,不料卻被柯南小朋友識(shí)破了偽裝,而他的滑翔翼的動(dòng)力裝置也被柯南踢出的足球破壞了。不得已,怪盜基德只能操作受損的滑翔翼逃脫。
假設(shè)城市中一共有N幢建筑排成一條線,每幢建筑的高度各不相同。初始時(shí),怪盜基德可以在任何一幢建筑的頂端。他可以選擇一個(gè)方向逃跑,但是不能中途改變方向(因?yàn)橹猩繒?huì)在后面追擊)。因?yàn)榛枰韯?dòng)力裝置受損,他只能往下滑行(即:只能從較高的建筑滑翔到較低的建筑)。他希望盡可能多地經(jīng)過(guò)不同建筑的頂部,這樣可以減緩下降時(shí)的沖擊力,減少受傷的可能性。請(qǐng)問(wèn),他最多可以經(jīng)過(guò)多少幢不同建筑的頂部(包含初始時(shí)的建筑)?
【輸入】
輸入數(shù)據(jù)第一行是一個(gè)整數(shù)K(K < 100),代表有K組測(cè)試數(shù)據(jù)。 每組測(cè)試數(shù)據(jù)包含兩行:第一行是一個(gè)整數(shù)N(N < 100),代表有N幢建筑。第二行包含N個(gè)不同的整數(shù),每一個(gè)對(duì)應(yīng)一幢建筑的高度h(0 < h < 10000),按照建筑的排列順序給出。
【輸出】
對(duì)于每一組測(cè)試數(shù)據(jù),輸出一行,包含一個(gè)整數(shù),代表怪盜基德最多可以經(jīng)過(guò)的建筑數(shù)量。
【樣例輸入】
3
8
300 207 155 299 298 170 158 65
8
65 158 170 298 299 155 207 300
10
2 1 3 4 5 6 7 8 9 10
【樣例輸出】
6
6
9
參考答案文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-498146.html
2.數(shù)字組合
有n個(gè)正整數(shù),找出其中和為t(t也是正整數(shù))的可能的組合方式。如: n=5,5個(gè)數(shù)分別為1,2,3,4,5,t=5; 那么可能的組合有5=1+4和5=2+3和5=5三種組合方式。
【輸入】
輸入的第一行是兩個(gè)正整數(shù)n和t,用空格隔開(kāi),其中1<=n<=20,表示正整數(shù)的個(gè)數(shù),t為要求的和(1<=t<=1000) 接下來(lái)的一行是n個(gè)正整數(shù),用空格隔開(kāi)。
【輸出】
和為t的不同的組合方式的數(shù)目。
【樣例輸入】
5 5
1 2 3 4 5
【樣例輸出】
3
參考答案
#include <bits/stdc++.h>
using namespace std;
int a[25],n,t,ans;
void dfs(int i,int sum){
if(i==n){
if(t==sum){
ans++;
}
return;
}
i++;
dfs(i,sum+a[i]);
dfs(i,sum);
}
int main(){
cin>>n>>t;
for(int i=1;i<=n;i++){
cin>>a[i];
}
dfs(0,0);
cout<<ans;
return 0;
}
3.帶通配符的字符串匹配
通配符是一類鍵盤字符,當(dāng)我們不知道真正字符或者不想鍵入完整名字時(shí),常常使用通配符代替一個(gè)或多個(gè)真正字符。通配符有問(wèn)號(hào)(?)和星號(hào)()等,其中,“?”可以代替一個(gè)字符,而“”可以代替零個(gè)或多個(gè)字符。
你的任務(wù)是,給出一個(gè)帶有通配符的字符串和一個(gè)不帶通配符的字符串,判斷他們是否能夠匹配。
例如,1?456 可以匹配 12456、13456、1a456,但是卻不能夠匹配23456、1aa456;2*77?8可以匹配 24457798、237708、27798。
【輸入】
輸入有兩行,每行為一個(gè)不超過(guò)20個(gè)字符的字符串,第一行帶通配符,第二行不帶通配符
【輸出】
如果兩者可以匹配,就輸出“matched”,否則輸出“not matched”
【樣例輸入】
1*456?
11111114567
【樣例輸出】
matched
參考答案
4.股票買賣
最近越來(lái)越多的人都投身股市,阿福也有點(diǎn)心動(dòng)了。謹(jǐn)記著“股市有風(fēng)險(xiǎn),入市需謹(jǐn)慎”,阿福決定先來(lái)研究一下簡(jiǎn)化版的股票買賣問(wèn)題。
假設(shè)阿福已經(jīng)準(zhǔn)確預(yù)測(cè)出了某只股票在未來(lái) N 天的價(jià)格,他希望買賣兩次,使得獲得的利潤(rùn)最高。為了計(jì)算簡(jiǎn)單起見(jiàn),利潤(rùn)的計(jì)算方式為賣出的價(jià)格減去買入的價(jià)格。
同一天可以進(jìn)行多次買賣。但是在第一次買入之后,必須要先賣出,然后才可以第二次買入。
現(xiàn)在,阿福想知道他最多可以獲得多少利潤(rùn)。
【輸入】
輸入的第一行是一個(gè)整數(shù) T (T <= 50) ,表示一共有 T 組數(shù)據(jù)。 接下來(lái)的每組數(shù)據(jù),第一行是一個(gè)整數(shù) N (1 <= N <= 100, 000) ,表示一共有 N 天。第二行是 N 個(gè)被空格分開(kāi)的整數(shù),表示每天該股票的價(jià)格。該股票每天的價(jià)格的絕對(duì)值均不會(huì)超過(guò) 1,000,000 。
【輸出】
對(duì)于每組數(shù)據(jù),輸出一行。該行包含一個(gè)整數(shù),表示阿福能夠獲得的最大的利潤(rùn)。
【樣例輸入】
3
7
5 14 -2 4 9 3 17
6
6 8 7 4 1 -2
4
18 9 5 2
【樣例輸出】
28
2
0
提示:對(duì)于第一組樣例,阿??梢缘?1 次在第 1 天買入(價(jià)格為 5 ),然后在第 2 天賣出(價(jià)格為 14 )。第 2 次在第 3 天買入(價(jià)格為 -2 ),然后在第 7 天賣出(價(jià)格為 17 )。一共獲得的利潤(rùn)是 (14 - 5) + (17 - (-2)) = 28 對(duì)于第二組樣例,阿??梢缘?1 次在第 1 天買入(價(jià)格為 6 ),然后在第 2 天賣出(價(jià)格為 8 )。第 2 次仍然在第 2 天買入,然后在第 2 天賣出。一共獲得的利潤(rùn)是 8 - 6 = 2 對(duì)于第三組樣例,由于價(jià)格一直在下跌阿??梢噪S便選擇一天買入之后迅速賣出。獲得的最大利潤(rùn)為 0
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-498146.html
參考答案
到了這里,關(guān)于中國(guó)電子學(xué)會(huì)2023年05月份青少年軟件編程C++等級(jí)考試試卷四級(jí)真題(含答案)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!