亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

安徽工程大學(xué)校賽題目

adie / 3894人閱讀

概述:
介于有學(xué)弟問我題目,并且有些疑問自己在CSDN搜索也不知如何搜索出想要的東西(當(dāng)然其實都是從初學(xué)者過來的,在我自己摸索時,也有遇到過類似情況)。故有此想法,寫此題解,與其說是題解,倒不如說給大家分享一些博客與代碼,在補題時(正所謂,比賽不補題,等于沒比),可以輕松點,第一次用CSDN寫東西,不太熟練,或許有些小問題,請多擔(dān)待。
#第一題
printf語法題,按題目要求輸出即可。
#第二題
經(jīng)典oj第一題a+b,多了個未知測試數(shù)據(jù)數(shù)量來進行讀入,雖然是競賽基本tips,但對于大多數(shù)同學(xué)來說,可能會不太友好,不過見過一次,學(xué)一下,基本也就會了。
多組測試數(shù)據(jù)介紹 詳情見博客添加鏈接描述

提供給新生C語言的寫法

//寫法一#includeint main(){	int a,b;	while(~scanf("%d %d",&a,&b)){		printf("%d/n",a+b);	} 	return 0;} //寫法二#includeint main(){	int a,b;	while(scanf("%d %d",&a,&b)!=EOF){		printf("%d/n",a+b);	} 	return 0;} 

C++寫法

#includeusing namespace std;int main(){	int a,b;	while(cin>>a>>b){		cout<<a+b<<endl;	} 	return 0;} 

#第三題
字符串模擬題,新生可能沒學(xué)到字符串,或許一些同學(xué)對于字符串理解較少,但其實實現(xiàn)并不難,主要還是卡在多組測試數(shù)據(jù)數(shù)量,讀入無法處理
題解:如何循環(huán)遍歷整個字符串有多種方式,可以選擇自己習(xí)慣的方式。一方面就是判斷字符串是否超過8個字符,另一方面就是是否滿足題目要求;就是四類字符出現(xiàn)三類,在遍歷的時候加以if else進行判斷,如果出現(xiàn)的話,它那一類的貢獻(xiàn)就是1,最后四種數(shù)加起來的貢獻(xiàn)超過3,即為合法字符串;
值得一提的是這里判斷字母,數(shù)字,可以用到這幾個函數(shù)來簡化操作:
int islower(int c):檢查字符是否為小寫的字母;(a~z)
int isupper(int c):檢查字符是否為大寫字母;(A~Z)
int isdigit(int c):檢查字符是否為十進制數(shù)字;(0~9)
想嘗試的同學(xué),可以自己試試呢,不要忘了頭文件啊,不過這道題體現(xiàn)不出優(yōu)勢,一些題目用類似這些函數(shù),可以簡化代碼,減少錯誤。
這是博客鏈接,介紹了一些字符串函數(shù)添加鏈接描述

C語言代碼

#include#includeint check(char s[]){		//判斷字符串是否合法,合法返回true,不合法返回false 	int n=strlen(s),i;	if(n<8) return 0;	//長度小于8,不符合題意,返回false; 	int a=0,b=0,c=0,d=0;	//每一類默認(rèn)是0,出現(xiàn)的這一類的,他的貢獻(xiàn)即為1; 	for(i=0;i<n;i++){		if(s[i]>="0"&&s[i]<="9") a=1;		if(s[i]>="a"&&s[i]<="z") b=1;		if(s[i]>="A"&&s[i]<="A") c=1;		if(s[i]=="~"||s[i]=="!"||s[i]=="@"||s[i]=="#"||s[i]=="$"||s[i]=="%"||s[i]=="^") d=1;	}	return (a+b+c+d)>=3;}int main(){	char s[20];	while(~scanf("%s",s)){		if(check(s)==1) puts("YES");		else puts("NO");	} 	return 0;} 

C++代碼

#includeusing namespace std;bool check(string s){		//判斷字符串是否合法,合法返回true,不合法返回false 	int n=s.size();	if(n<8) return false;	//長度小于8,不符合題意,返回false; 	int a=0,b=0,c=0,d=0;	//每一類默認(rèn)是0,出現(xiàn)的這一類的,他的貢獻(xiàn)即為1; 	for(int i=0;i<n;i++){		if(s[i]>="0"&&s[i]<="9") a=1;		if(s[i]>="a"&&s[i]<="z") b=1;		if(s[i]>="A"&&s[i]<="Z") c=1;		if(s[i]=="~"||s[i]=="!"||s[i]=="@"||s[i]=="#"||s[i]=="$"||s[i]=="%"||s[i]=="^") d=1;	}	return (a+b+c+d)>=3;}int main(){	string s;	while(cin>>s){		if(check(s)==true) puts("YES");		else puts("NO");	} 	return 0;} 

#第四題
題目有這么一點鍋,鑒于習(xí)慣,N的大小未知,導(dǎo)致一看就不想寫,不過一看就是一個貪心題,并且在網(wǎng)上搜索后,發(fā)現(xiàn)是藍(lán)橋某一年省賽的題,并且N最大只有10左右,而且是保證數(shù)據(jù)按照原點的順序遞增的,這些在題目中表達(dá)的都不是很明確,不是很友好。(新生可以先放放這一題,別的模擬題可以補一補,寫一寫)
網(wǎng)上有現(xiàn)成的題解與代碼,也就直接把博客分享給各位了添加鏈接描述

#第五題
經(jīng)典01背包問題:屬于動態(tài)規(guī)劃入門題。題目轉(zhuǎn)換一下,就是求在體積為m的情況下,把所有物品能湊成小于m的最大體積(即經(jīng)典01背包問題),m減去這個最大體積,就是要求的答案。(新生可以先放放這一題,別的模擬題可以補一補,寫一寫)
給一個01背包博客,感興趣的同學(xué)可以自己看看添加鏈接描述

僅提供一個C++的代碼,

#includeusing namespace std;int f[200010];			//全局變量,初始值自然為0;int main(){	int m,n,maxs=0;			cin>>m>>n;	f[0]=1;			//初始體積可以為0,初始化	for(int i=1,v;i<=n;i++){ 	//枚舉物品		cin>>v;		for(int j=m;j>=v;j--){	//枚舉體積			f[j]|=f[j-v];			if(f[j]==1) maxs=max(maxs,j);		}	}	cout<<m-maxs<<endl;	return 0;}

#第六題
依舊是經(jīng)典字符串模擬題,不過可以是我閱讀理解比較差,那個輸出看了幾遍都沒太看懂,后來似乎試懂了,但是也老是有問題,然后因為校賽,比較隨意,WA的比較多,也懶得寫第四題了(反正沒法AK),還有點事,就先走了。后續(xù)發(fā)現(xiàn)了問題所在,當(dāng)n=1的時候,是there is,n不為1是,應(yīng)該是there are。
解析:遍歷字符串,對每個字符進行判斷,然后同時進行修改,這里需要注意就是他的輸出條件,不妨開一個char數(shù)組來存放答案,按要求即可。
C語言:(感謝孟帥同學(xué)提供的代碼,我就不用寫了)

#define _CRT_SECURE_NO_WARNINGS 1#include #include #include int main(){	int n;	scanf("%d", &n);	int m = 0;	int N = n;	char na[1010][100];	char pss[1010][100];	memset(na, 0, sizeof(na));	memset(pss, 0, sizeof(pss));	while (N--) {		char name[15],ps[15];		scanf("%s %s", name, ps);		 		int isc = 0;		    		//標(biāo)記數(shù)字是否被修改過 		int i = 0;		while (ps[i] != "/0") {			//判斷字符串是否到結(jié)尾了 			if (ps[i] == "1") {				ps[i] = "@";				isc = 1;			}			if (ps[i] == "0") {				ps[i] = "%";				isc = 1;			}			if (ps[i] == "l") {				ps[i] = "L";				isc = 1;			}			if (ps[i] == "O") {				ps[i] = "o";				isc = 1;			}			i++;		}		if (isc == 1) {				//若密碼被修改了,進行相應(yīng)處理 			memcpy(na[m], name, sizeof(name));		//在同一個下標(biāo)下,一個數(shù)組存的名字 			memcpy(pss[m], ps, sizeof(ps));			//在同一個下標(biāo)下,另一個數(shù)組存的密碼 			m++;		//該數(shù)字下存完,下一個加一 		}	}	if (0 == m) {		if (1 == n) printf("There is 1 account and no account is modified/n");//有個坑點,如果總數(shù)是一個人要用is 		else printf("There are %d accounts and no account is modified", n);//多個人,這里是are 	}	else {		printf("%d/n", m);		//打印修改的人數(shù),并遍歷輸出 		for (int i = 0; i < m; i++) {			printf("%s %s/n", na[i], pss[i]);		}	}	return 0;}

C++:

#includeusing namespace std;pair<string,string> q[1010]; bool check(string &s){			//注意這里的引用,對s字符串進行了修改 	bool flag=false;			//字符串flag標(biāo)記,flag為flase是未被修改 	for(int i=0;i<s.size();i++){		if(s[i]=="1"){			s[i]="@";			flag=true;		}else if(s[i]=="0"){			s[i]="%";			flag=true;		}else if(s[i]=="l"){			s[i]="L";			flag=true;		}else if(s[i]=="O"){			s[i]="o";			flag=true;		}	}	return flag;		//若字符串被修改了,返回true; }int main(){	int n;	cin>>n;	int cnt=0;	string s1,s2;	for(int i=1;i<=n;i++){		cin>>s1>>s2;		if(check(s2)){			//check判斷的同時修改 			q[++cnt]={s1,s2};	//若該字符串被秀了,自加一個位置添加數(shù)據(jù); 		}	}	if(cnt==0){		if(n==1){		//有個坑點,如果總數(shù)是一個人要用is 			printf("There is 1 account and no account is modified/n");		}else{			//多個人,這里是are 			 printf("There are %d accounts and no account is modified", n);		}	}else{		printf("%d/n",cnt);		for(int i=1;i<=cnt;i++)		//循環(huán)遍歷輸出cnt修改后的人的信息 			cout<<q[i].first<<" "<<q[i].second<<endl;	}	return 0;} 

#第七題:
題解:題目意思很明確,就套娃,按著他的要求執(zhí)行即可,需要寫一個change()函數(shù)和一個check()函數(shù);
check()函數(shù):判斷字符串是否回文,鑒于自己介紹不清楚,在此給大家分享一個博客,感興趣可自行查看
添加鏈接描述
change()函數(shù):進制模擬,一個數(shù),加上他的倒序數(shù),即把原數(shù)字翻轉(zhuǎn),然后從低位往高位相加,注意最后有可能最高位有進位,記得處理一下最后的一位(并且會且只會多一會,可以用十進制試一下,比如987+789,是不可能變成5位數(shù)的)
鑒于拿C語言實現(xiàn)比較麻煩(好吧,我比較懶,不想再寫一遍了),個人只提供一種C++的寫法:

#includeusing namespace std;bool check(string s){		//判斷字符串是否回文,方法多種多樣,可選擇自己習(xí)慣的方式	int i=0,j=s.size()-1;	while(i<j){		if(s[i]==s[j]){			i++,j--;		}else{			return false;		}	}	return true;}string  change(string s1,int n){	string s2=s1;						//拷貝原字符串 	reverse(s2.begin(),s2.end());		//原串s1的翻轉(zhuǎn)字符串 		string res;		//存放結(jié)果字符串 	int ans=0;		//用來模擬進位 	for(int i=s1.size()-1;i>=0;i--){			//循環(huán)從后往前,從個位開始累加 		int a,b;		//a存的是原字符串在第i的數(shù)字的大小,b存的是翻轉(zhuǎn)后的s在第i的數(shù)字 		if(s1[i]>="0"&&s1[i]<="9") a=s1[i]-"0";	//s[i]是數(shù)字,那他的大小就是它和"0"之間的差值 		else a=s1[i]-"A"+10;						//s[i]是字母,他的大小是它和"A"之間的差值在加10,因為A對應(yīng)的是10 		if(s2[i]>="0"&&s2[i]<="9") b=s2[i]-"0";	//處理逆序 		else b=s2[i]-"A"+10;		ans+=a+b;		//累加								int temp=ans%n;	//求出當(dāng)前的值				ans/=n;			//保留進位 		if(temp<=9) res+=temp+"0"
                 
               
              

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/124500.html

相關(guān)文章

  • 天馬行空腳踏實地,阿里巴巴有群百里挑一的天才應(yīng)屆生

    摘要:阿里巴巴有一群天馬行空腳踏實地的阿里星。天馬行空腳踏實地奮斗在阿里巴巴生態(tài)圈里,阿里星們高考狀元清華博士論文達(dá)人的光環(huán)早已褪去,但是不斷學(xué)習(xí),不斷接受挑戰(zhàn),仍然是這些學(xué)霸的本色。 showImg(https://segmentfault.com/img/remote/1460000018728353); 阿里巴巴有一群天馬行空腳踏實地的阿里星。 阿里巴巴的春季校招已經(jīng)啟動。在阿里的技術(shù)...

    sshe 評論0 收藏0
  • 天馬行空腳踏實地,阿里巴巴有群百里挑一的天才應(yīng)屆生

    摘要:阿里巴巴有一群天馬行空腳踏實地的阿里星。天馬行空腳踏實地奮斗在阿里巴巴生態(tài)圈里,阿里星們高考狀元清華博士論文達(dá)人的光環(huán)早已褪去,但是不斷學(xué)習(xí),不斷接受挑戰(zhàn),仍然是這些學(xué)霸的本色。 showImg(https://segmentfault.com/img/remote/1460000018728353); 阿里巴巴有一群天馬行空腳踏實地的阿里星。 阿里巴巴的春季校招已經(jīng)啟動。在阿里的技術(shù)...

    Eidesen 評論0 收藏0
  • 2021藍(lán)橋杯你值得擁有

    摘要:文章目錄一你應(yīng)該知道的藍(lán)橋杯含金量獲獎率高不高支持哪些編程語言二川川帶你體驗藍(lán)橋杯省賽藍(lán)橋杯藍(lán)橋杯三個人感受一你應(yīng)該知道的藍(lán)橋杯如果你是計算機相關(guān)專業(yè),你不知藍(lán)橋杯就過不去了,我們來看看藍(lán)橋杯如何,不知道更應(yīng)該來了解下了。 ...

    fanux 評論0 收藏0
  • ??導(dǎo)圖整理大廠面試高頻數(shù)組8: 移除元素的雙指針優(yōu)化, 力扣27??

    此專欄文章是對力扣上算法題目各種方法的總結(jié)和歸納, 整理出最重要的思路和知識重點并以思維導(dǎo)圖形式呈現(xiàn), 當(dāng)然也會加上我對導(dǎo)圖的詳解. 目的是為了更方便快捷的記憶和回憶算法重點(不用每次都重復(fù)看題解), 畢竟算法不是做了一遍就能完全記住的. 所以本文適合已經(jīng)知道解題思路和方法, 想進一步加強理解和記憶的朋友, 并不適合第一次接觸此題的朋友(可以根據(jù)題號先去力扣看看官方題解, 然后再看本文內(nèi)容). 關(guān)...

    zhangyucha0 評論0 收藏0
  • 思維導(dǎo)圖整理大廠面試高頻數(shù)組24: 合并兩個有序數(shù)組的兩種雙指針?biāo)枷? 力扣88

    摘要:此專欄文章是對力扣上算法題目各種方法的總結(jié)和歸納整理出最重要的思路和知識重點并以思維導(dǎo)圖形式呈現(xiàn)當(dāng)然也會加上我對導(dǎo)圖的詳解目的是為了更方便快捷的記憶和回憶算法重點不用每次都重復(fù)看題解畢竟算法不是做了一遍就能完全記住的所 ...

    darkerXi 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<