日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > > 充電吧
[導(dǎo)讀]題面:統(tǒng)計難題 Time Limit: 4000/2000 MS (Java/Others)????Memory Limit: 131070/65535 K (Java/Others)Total Su

題面:


統(tǒng)計難題 Time Limit: 4000/2000 MS (Java/Others)????Memory Limit: 131070/65535 K (Java/Others)
Total Submission(s): 25921????Accepted Submission(s): 10560


Problem Description Ignatius最近遇到一個難題,老師交給他很多單詞(只有小寫字母組成,不會有重復(fù)的單詞出現(xiàn)),現(xiàn)在老師要他統(tǒng)計出以某個字符串為前綴的單詞數(shù)量(單詞本身也是自己的前綴).
?
Input 輸入數(shù)據(jù)的第一部分是一張單詞表,每行一個單詞,單詞的長度不超過10,它們代表的是老師交給Ignatius統(tǒng)計的單詞,一個空行代表單詞表的結(jié)束.第二部分是一連串的提問,每行一個提問,每個提問都是一個字符串.

注意:本題只有一組測試數(shù)據(jù),處理到文件結(jié)束.
?
Output 對于每個提問,給出以該字符串為前綴的單詞的數(shù)量.
?
Sample Input


banana band bee absolute acm ba b band abc ?
Sample Output


2 3 1 0


題意:

? ?額,中文大家都懂。


解題:

? ? 字典樹裸題,val值統(tǒng)計經(jīng)過該點的字母數(shù)量。


代碼:


#include#include#include#includeusing?namespace?std;
struct?Trie
{
	//用來儲存該節(jié)點的26個字母下標(biāo),ch的第一維要注意,要開大,不然會T?
	int?ch[1000010][26];
	//val數(shù)組一般用來存儲權(quán)值,視題目靈活運用,sz是當(dāng)前節(jié)點數(shù)量
	int?val[1000010],sz;
	//初始化
	void?init()
	{
		sz=1;
		memset(ch[0],0,sizeof(ch[0]));
	}
	//插入一條單詞
	void?insert(string?s)
	{
		//u是節(jié)點編號,并不是層數(shù)
		int?u=0,len=s.length();
		for(int?i=0;i<len;i++)
		{
			//取下標(biāo)
			int?c=(s[i]-'a');
			//如果該節(jié)點不存在,創(chuàng)建該節(jié)點
			if(!ch[u][c])
			{
				//真的是相當(dāng)?shù)氖?				memset(ch[sz],0,sizeof(ch[sz]));
				//因為剛創(chuàng)建所以為1
				val[sz]=1;
				//給該節(jié)點分配編號
				ch[u][c]=sz++;
				//下移
				u=ch[u][c];
			}
			//已經(jīng)存在了
			else
			{
			??//下移,并計數(shù)值加一
			??u=ch[u][c];
		??????val[u]++;
			}
		}
	}
	//查詢前綴
	int?query(string?s)
	{
		int?len=s.length(),u=0,c;
		//不斷下移,直至移到給定的前綴的最后一個單詞
		bool?sign=true;
		for(int?i=0;i<len;i++)
		{
		???c=s[i]-'a';
		???if(ch[u][c])
?????????????u=ch[u][c];
???????????else
???????????{
??????????????sign=false;
??????????????break;
???????????}
		}
		if(sign)
??????????return?val[u];
????????else
??????????return?0;
	}
};
Trie?T;
int?main()
{
????????string?s;
????????T.init();
????????while(getline(cin,s))
????????{
???????????if(s=="")break;
???????????T.insert(s);
????????}
????????while(getline(cin,s))
????????{
???????????cout<<T.query(s)<<endl;
????????}
	????return?0;
}



本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當(dāng)下,工業(yè)電機作為核心動力設(shè)備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅(qū)動電源設(shè)計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設(shè)計成為提升電機驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設(shè)備的使用壽命。然而,在實際應(yīng)用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設(shè)計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設(shè)計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉