版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2025年全國(guó)青少年信息素養(yǎng)大賽C++編程初中組復(fù)賽練習(xí)題+答案第一題運(yùn)動(dòng)會(huì)積分統(tǒng)計(jì)為激勵(lì)學(xué)生參與體育活動(dòng),某校運(yùn)動(dòng)會(huì)設(shè)置三個(gè)比賽項(xiàng)目(跑步、跳遠(yuǎn)、投擲),每個(gè)班級(jí)需提交三個(gè)項(xiàng)目的得分(均為整數(shù),0≤得分≤50)?,F(xiàn)需統(tǒng)計(jì)滿足以下條件的班級(jí)數(shù)量:1.三個(gè)項(xiàng)目得分之和大于80分;2.每個(gè)項(xiàng)目得分均不低于15分。輸入格式:第一行輸入一個(gè)整數(shù)n(1≤n≤100),表示班級(jí)數(shù)量;接下來(lái)n行,每行輸入三個(gè)整數(shù)a、b、c,分別代表該班級(jí)三個(gè)項(xiàng)目的得分。輸出格式:輸出一個(gè)整數(shù),表示符合條件的班級(jí)數(shù)量。樣例輸入:3182540151452203035樣例輸出:2解題思路:遍歷每個(gè)班級(jí)的三個(gè)得分,首先檢查每個(gè)項(xiàng)目是否≥15,若不滿足則跳過(guò);若滿足,計(jì)算總分是否>80,若滿足則計(jì)數(shù)加一。參考代碼:```cppinclude<iostream>usingnamespacestd;intmain(){intn,count=0;cin>>n;for(inti=0;i<n;++i){inta,b,c;cin>>a>>b>>c;if(a>=15&&b>=15&&c>=15){if(a+b+c>80){count++;}}}cout<<count<<endl;return0;}```第二題智能密碼驗(yàn)證某系統(tǒng)需設(shè)計(jì)一個(gè)密碼驗(yàn)證程序,密碼需滿足以下規(guī)則:1.長(zhǎng)度在8到16位之間(含8和16);2.至少包含大寫(xiě)字母(A-Z)、小寫(xiě)字母(a-z)、數(shù)字(0-9)、特殊符號(hào)(僅包含!@)中的每一類各一個(gè);3.不能有連續(xù)三個(gè)或以上相同的字符(例如“aaa”“111”不允許,但“aabbaa”允許)。輸入格式:輸入一行字符串s,表示待驗(yàn)證的密碼。輸出格式:若密碼符合所有規(guī)則,輸出“Valid”;否則輸出“Invalid”。樣例輸入1:Passw0rd!@樣例輸出1:Valid樣例輸入2:abc123!@A樣例輸出2:Invalid(注:長(zhǎng)度為9,但假設(shè)該樣例實(shí)際不滿足其他條件,例如可能有連續(xù)字符,需根據(jù)代碼邏輯調(diào)整)解題思路:1.檢查長(zhǎng)度是否在8-16之間;2.遍歷字符,統(tǒng)計(jì)是否包含四類字符;3.檢查是否存在連續(xù)三個(gè)相同字符;4.所有條件滿足則輸出Valid,否則Invalid。參考代碼:```cppinclude<iostream>include<string>usingnamespacestd;intmain(){strings;getline(cin,s);intlen=s.size();//條件1:長(zhǎng)度檢查if(len<8||len>16){cout<<"Invalid"<<endl;return0;}boolhasUpper=false,hasLower=false,hasDigit=false,hasSpecial=false;boolbadSeq=false;//是否有連續(xù)三個(gè)相同字符for(inti=0;i<len;++i){charc=s[i];if(c>='A'&&c<='Z')hasUpper=true;elseif(c>='a'&&c<='z')hasLower=true;elseif(c>='0'&&c<='9')hasDigit=true;elseif(c=='!'||c=='@'||c=='')hasSpecial=true;else{//包含其他特殊符號(hào)cout<<"Invalid"<<endl;return0;}//檢查連續(xù)三個(gè)相同字符(i>=2時(shí)判斷i-2,i-1,i)if(i>=2){if(s[i]==s[i-1]&&s[i]==s[i-2]){badSeq=true;}}}if(!hasUpper||!hasLower||!hasDigit||!hasSpecial){cout<<"Invalid"<<endl;return0;}if(badSeq){cout<<"Invalid"<<endl;return0;}cout<<"Valid"<<endl;return0;}```第三題數(shù)位游戲定義一個(gè)“幸運(yùn)數(shù)”為滿足以下條件的正整數(shù):1.位數(shù)為3位(即100≤x≤999);2.各位數(shù)字非遞減(即個(gè)位≥十位≥百位,例如123、112、333滿足,213不滿足);3.能被13整除。請(qǐng)計(jì)算所有3位“幸運(yùn)數(shù)”的個(gè)數(shù)。輸入格式:無(wú)(直接計(jì)算所有符合條件的數(shù))輸出格式:輸出一個(gè)整數(shù),表示符合條件的“幸運(yùn)數(shù)”個(gè)數(shù)。樣例輸出:(假設(shè)正確答案為15,實(shí)際需根據(jù)計(jì)算調(diào)整)解題思路:枚舉所有3位數(shù)(100到999),對(duì)每個(gè)數(shù)分解出百位、十位、個(gè)位,檢查是否非遞減且能被13整除,統(tǒng)計(jì)符合條件的數(shù)量。參考代碼:```cppinclude<iostream>usingnamespacestd;intmain(){intcount=0;for(intx=100;x<=999;++x){inthundred=x/100;intten=(x/10)%10;intone=x%10;//檢查非遞減if(one>=ten&&ten>=hundred){//檢查能否被13整除if(x%13==0){count++;}}}cout<<count<<endl;return0;}```第四題迷宮探險(xiǎn)有一個(gè)N×M的迷宮(1≤N,M≤10),用二維數(shù)組表示。其中:'S'表示起點(diǎn);'T'表示終點(diǎn);'.'表示可通行的空地;''表示障礙物(不可通行)。移動(dòng)規(guī)則:每次只能向上下左右四個(gè)方向移動(dòng)一步,不能穿過(guò)障礙物或越界。求從起點(diǎn)到終點(diǎn)的最短路徑長(zhǎng)度(步數(shù)),若無(wú)法到達(dá)則輸出-1。輸入格式:第一行輸入兩個(gè)整數(shù)N和M(N行M列);接下來(lái)N行,每行輸入一個(gè)長(zhǎng)度為M的字符串,表示迷宮布局。輸出格式:輸出一個(gè)整數(shù),表示最短步數(shù);若無(wú)法到達(dá),輸出-1。樣例輸入:33S.....T樣例輸出:6解題思路:使用廣度優(yōu)先搜索(BFS)遍歷迷宮。BFS能保證首次到達(dá)終點(diǎn)時(shí)的路徑為最短路徑。需記錄每個(gè)位置的訪問(wèn)狀態(tài),避免重復(fù)訪問(wèn)。參考代碼:```cppinclude<iostream>include<queue>include<cstring>usingnamespacestd;structPosition{intx,y,step;};intmain(){intn,m;cin>>n>>m;charmaze[10][10];intstartX,startY,endX,endY;//讀取迷宮并記錄起點(diǎn)和終點(diǎn)坐標(biāo)for(inti=0;i<n;++i){for(intj=0;j<m;++j){cin>>maze[i][j];if(maze[i][j]=='S'){startX=i;startY=j;}elseif(maze[i][j]=='T'){endX=i;endY=j;}}}//方向數(shù)組:上下左右intdir[4][2]={{-1,0},{1,0},{0,-1},{0,1}};boolvisited[10][10]={false};//標(biāo)記是否已訪問(wèn)queue<Position>q;q.push({startX,startY,0});visited[startX][startY]=true;intans=-1;while(!q.empty()){Positioncur=q.front();q.pop();//到達(dá)終點(diǎn)if(cur.x==endX&&cur.y==endY){ans=cur.step;break;}//遍歷四個(gè)方向for(inti=0;i<4;++i){intnx=cur.x+dir[i][0];intny=cur.y+dir[i][1];//檢查是否越界if(nx<0||nx>=n||ny<0||ny>=m)continue;
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 管道施工現(xiàn)場(chǎng)噪音控制方案
- 工地施工人員考勤管理方案
- 鋼結(jié)構(gòu)設(shè)備安裝步驟方案
- 2025年(工業(yè)互聯(lián)網(wǎng)技術(shù))協(xié)議應(yīng)用試題及答案
- 晉江市博物館招聘考試真題2025
- 2025年霧化相關(guān)試題及答案
- 《醫(yī)療器械網(wǎng)絡(luò)銷售質(zhì)量管理規(guī)范》培訓(xùn)考核試題及答案
- 2025年風(fēng)險(xiǎn)管理自查報(bào)告范文
- 養(yǎng)老院活動(dòng)組織與安排制度
- (完整版)學(xué)校突發(fā)公共衛(wèi)生事件報(bào)告制度
- 人工智能推動(dòng)金融數(shù)據(jù)治理轉(zhuǎn)型升級(jí)研究報(bào)告2026
- 2026長(zhǎng)治日?qǐng)?bào)社工作人員招聘勞務(wù)派遣人員5人備考題庫(kù)含答案
- 期末教師大會(huì)上校長(zhǎng)精彩講話:師者當(dāng)備三盆水(洗頭洗手洗腳)
- 2026年濰坊職業(yè)學(xué)院?jiǎn)握芯C合素質(zhì)筆試備考試題附答案詳解
- 工兵基礎(chǔ)知識(shí)課件
- 2026年貴州省交通綜合運(yùn)輸事務(wù)中心和貴州省鐵路民航事務(wù)中心公開(kāi)選調(diào)備考題庫(kù)及答案詳解參考
- 2025四川雅安市名山區(qū)茗投產(chǎn)業(yè)集團(tuán)有限公司招聘合同制員工10人參考題庫(kù)附答案
- 人工智能應(yīng)用與實(shí)踐 課件 -第5章-智能體開(kāi)發(fā)與應(yīng)用
- 2025浙江紹興越城黃酒小鎮(zhèn)旅游開(kāi)發(fā)有限公司編外人員第二次招聘總筆試歷年典型考點(diǎn)題庫(kù)附帶答案詳解2套試卷
- 人教版三年級(jí)上冊(cè)數(shù)學(xué)應(yīng)用題100題及答案
- 防污閃涂料施工技術(shù)措施
評(píng)論
0/150
提交評(píng)論