![華為2023年筆試題_第1頁](http://file4.renrendoc.com/view/27ca7d1760d6a5573e5102c4bcce40ae/27ca7d1760d6a5573e5102c4bcce40ae1.gif)
![華為2023年筆試題_第2頁](http://file4.renrendoc.com/view/27ca7d1760d6a5573e5102c4bcce40ae/27ca7d1760d6a5573e5102c4bcce40ae2.gif)
![華為2023年筆試題_第3頁](http://file4.renrendoc.com/view/27ca7d1760d6a5573e5102c4bcce40ae/27ca7d1760d6a5573e5102c4bcce40ae3.gif)
![華為2023年筆試題_第4頁](http://file4.renrendoc.com/view/27ca7d1760d6a5573e5102c4bcce40ae/27ca7d1760d6a5573e5102c4bcce40ae4.gif)
![華為2023年筆試題_第5頁](http://file4.renrendoc.com/view/27ca7d1760d6a5573e5102c4bcce40ae/27ca7d1760d6a5573e5102c4bcce40ae5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
華為2023筆試題
1.刪除字符串中的指定字符
1.1問題描述
輸入兩個字符串M和N,從字符串M中刪除字符串N中全部的字符。例如,輸入”abcda”和”ac”,則刪除之后的”第一個字符串變成”bd”。
1.2問題求解
這個比擬簡潔,給出如下參考代碼:
#include
usingnamespacestd;
voiddeleteCharacter(stringstr0,stringstr1){
for(inti=0;i
if(str1.find(str0[i])!=string::npos){
str0.erase(i,1);
continue;
}
++i;
}
}
2.成績排名
2.1問題描述
題目總共包含如下兩種格式的字符串命令:
LODGRADE命令,其格式:
LODGRADE:NAME=XiaoMing,MATH=80,LANG=90;
(1)此命令用于導(dǎo)入學(xué)生成績
(2)NAME字段表示學(xué)生姓名
(3)MATH字段表示學(xué)生數(shù)學(xué)成績
(4)LANG字段表示語文成績
(5)MATH字段和LANG字段挨次不肯定MATH在前,LANG在后
(6)一樣的分?jǐn)?shù),名次一樣,后面的名次空缺;例如100,99,99,99,98,98,名次:1,2,2,2,5,5
(7)此命令會連續(xù)執(zhí)行,直到遇到第一個LSTGRADE
LSTGRADE命令,其格式:
LSTGRADE:NAME=XiaoMing;
(1)此命令用于查詢學(xué)生成績
(2)NAME字段表示學(xué)生姓名
(3)查詢結(jié)果格式:姓名數(shù)學(xué)語文總分?jǐn)?shù)學(xué)排名語文排名總排名
(4)每組用例,此命令僅執(zhí)行一次
輸入:連續(xù)多組LODGRADE后跟一個LSTGRADE查詢命令
輸出:輸出查詢格式為:
姓名數(shù)學(xué)語文總分?jǐn)?shù)學(xué)排名語文排名總排名
樣例輸入:LODGRADE:NAME=XiaoMing,MATH=80,LANG=90;
LODGRADE:NAME=XiaoHong,LANG=60,MATH=100;
LODGRADE:NAME=XiaoMei,MATH=70,LANG=90;
LSTGRADE:NAME=XiaoHong;
樣例輸出:XiaoHong10060160132
2.2問題求解
此問題也不難,沒有涉及到簡單的算法,就是比擬繁瑣,主要考察數(shù)據(jù)的表示,字符串的提取與排序,下面給出參考代碼:
#include
#include
#include
#include
usingnamespacestd;
structStudent{
stringname;
intmath;
intlang;
Student(){
this-name=;
this-math=0;
this-lang=0;
}
Student(stringname,intmath,intlang){
this-name=name;
this-math=math;
this-lang=lang;
}
booloperator==(constStudentele){
returnthis-name==;
}
};
//自定義比擬函數(shù),數(shù)學(xué)排名
boolcompareMath(constStudentleft,constStudentright){
returnleft.mathright.math;//降序排列
}
//自定義比擬函數(shù),語文排名
boolcompareLang(constStudentleft,constStudentright){
returnleft.langright.lang;//降序排列
}
//自定義比擬函數(shù),總分排名
boolcompareTotal(constStudentleft,constStudentright){
returnleft.math+left.langright.math+right.lang;//降序排列
}
intmain(){
vectorstudentVec;
stringinput;
Studentstudent;
vectorsplitedRes;
while(getline(cin,input)){
ints=input.find(NAME=);
inte=input.find(,,s);
if(input.find(LODGRADE)!=string::npos){//輸入成績
=input.substr(s+5,e-s-5);
s=input.find(MATH=);
e=input.find(,,s);
if(e==string::npos)e=input.length()-1;
student.math=stoi(input.substr(s+5,e-s-5));
s=input.find(LANG=);
e=input.find(,,s);
if(e==string::npos)e=input.length()-1;
student.lang=stoi(input.substr(s+5,e-s-5));
studentVec.push_back(student);
}else{//查詢成績
e=input.length()-1;
stringname=input.substr(s+5,e-s-5);
Studentstudent;
//數(shù)學(xué)排名
std::sort(studentVec.begin(),studentVec.end(),compareMath);
vector::iteratorit=find(studentVec.begin(),studentVec.end(),Student(name,0,0));
student=*it;
while(it!=studentVec.begin()(it-1)-math==it-math)--it;
intmathRank=it-studentVec.begin()+1;
//語文排名
std::sort(studentVec.begin(),studentVec.end(),compareLang);
it=find(studentVec.begin(),studentVec.end(),Student(name,0,0));
while(it!=studentVec.begin()(it-1)-lang==it-lang)--it;
intlangRank=it-studentVec.begin()+1;
//總分排名
std::sort(studentVec.begin(),studentVec.end(),compareTotal);
it=find(studentVec.begin(),studentVec.end(),Student(name,0,0));
while(it!=studentVec.begin()(it-1)-math+(it-1)-lang==it-math+it-lang)--it;
inttotalRank=it-studentVec.begin()+1;
cout
cout
3.2動態(tài)規(guī)劃法求解
遞歸法易于理解,但是存在對子問題的重復(fù)計算,時間效率低下,可以將子問題的結(jié)果存儲起來,把遞歸實現(xiàn),轉(zhuǎn)換為迭代實現(xiàn),這樣就變成了動態(tài)規(guī)劃。遞歸法是自頂向下,而動態(tài)規(guī)劃是自底向上遞歸法是需要某個結(jié)果時就調(diào)用自己來計算,動態(tài)規(guī)劃把每次遞推的結(jié)果保存在數(shù)組中。由于這里有i,ir,j,jr一個4個變量,所以其實需要一個4維數(shù)組,這里用了一個宏代替,將4維數(shù)組通過下標(biāo)轉(zhuǎn)變變?yōu)橐痪S數(shù)組。詳細(xì)實現(xiàn)參考如下代碼:
intfunc2(conststringa,conststringb){
constintla=(int)a.length();
constintlb=(int)b.length();
vectorret(la*la*lb*lb);
#defineVRET(a,b,c,d)(ret[(a)*la*lb*lb+(b)*lb*lb+(c)*lb+(d)])
for(intix=la-1;ix=0;ix--)
for(intirx=ix;irxla;irx++)
for(intjx=lb-1;jx=0;jx--)
for(intjrx=jx;jrxlb;jrx++){
inti=ix;
intir=irx;
intj=jx;
intjr=jrx;
while(i=irj=jra[i]==b[j]){
i++;
j++;
}
while(i=irj=jra[ir]==b[jr]){
ir--;
jr--;
}
if(iir){//A為空串
VRET(ix,irx,jx,jrx)=(jr+1-j)+2;
continue;
}elseif(jjr){//B為空串
VRET(ix,irx,jx,jrx)=2;
continue;
}
inttmp=2+(jr+1-j)+2;//最壞狀況,將A全部刪除再增加到B
for(intk=i+1;k=ir;k++)
tmp=min(tmp,2+VRET(k,ir,j,jr));
for(intk=ir-1;k=i;k--)
tmp=min(tmp,2+VRET(i,k,j,jr));
for(intk=j+1;k=jr;k++)
tmp=min(tmp,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 物聯(lián)網(wǎng)技術(shù)在職教實訓(xùn)室的應(yīng)用前景
- 現(xiàn)代物流配送體系的智能化升級路徑
- 2024年學(xué)年八年級語文上冊 第一單元 愛在人間 第3課《蘆花蕩》說課稿 滬教版五四制
- 2024年四年級英語下冊 Unit 5 What will you do this weekend Lesson 25說課稿 人教精通版(三起)
- Unit 1 Greetings(說課稿)-2024-2025學(xué)年滬教版(五四制)(2024)英語一年級上冊
- 2023二年級數(shù)學(xué)下冊 7 萬以內(nèi)數(shù)的認(rèn)識第2課時 1000以內(nèi)數(shù)的認(rèn)識(2)說課稿 新人教版
- Unit 3 Food Let's Spell(說課稿)-2024-2025學(xué)年人教新起點版英語三年級上冊
- 2024-2025學(xué)年高一地理《宇宙中的地球》說課稿
- 2023六年級數(shù)學(xué)上冊 八 探索樂園單元概述和課時安排說課稿 冀教版
- 2024-2025學(xué)年高中歷史 專題4 雅爾塔體制下的冷戰(zhàn)與和平 3 人類對和平的追求說課稿(含解析)人民版選修3
- 2025年中國濕度傳感器行業(yè)深度分析、投資前景、趨勢預(yù)測報告(智研咨詢)
- 人教版道德與法治二年級下冊《第一單元 讓我試試看》大單元整體教學(xué)設(shè)計2022課標(biāo)
- 甘肅省蘭州市蘭煉一中2025屆數(shù)學(xué)高一上期末統(tǒng)考試題含解析
- 聯(lián)合體三方協(xié)議合同模板
- 2024年3季度青島房地產(chǎn)市場季度簡報
- 蘇東坡詞十首
- 山東省臨沂市2024年中考物理真題
- 2023年天津市文化和旅游局直屬事業(yè)單位招聘考試真題及答案
- 電力系統(tǒng)分析(郝亮亮)
- 改善護(hù)理服務(wù)行動計劃方案
- 建筑材料包銷協(xié)議書
評論
0/150
提交評論