c 華為面試題 牛客網 3 0

2021-09-23 01:38:54 字數 4526 閱讀 8283

越做越覺得非科班出身的艱難。。。要不還是老老實實畫圖去?

好吧 再來一題:給出乙個名字,該名字有26個字串組成,定義這個字串的「漂亮度」是其所有字母「漂亮度」的總和。 

每個字母都有乙個「漂亮度」,範圍在1到26之間。沒有任何兩個字母擁有相同的「漂亮度」。字母忽略大小寫。 

給出多個名字,計算每個名字最大可能的「漂亮度」

這個就是簡單的迴圈歸類。。。找出每個字串相同字元的個數,來看**

#include#include#include#includeusing namespace std;

int main()

for (int i = 0; i < vec.size(); i++)

}vec1.push_back(n);

}sort(vec1.begin(), vec1.end());

int s = 26;

for (int j = vec1.size() - 1; j >= 0; j--)

vec2.push_back(sum);

} for (int i = 0; i < vec2.size(); i++)

}return 0;

}

來看這題:編寫乙個擷取字串的函式,輸入為乙個字串和位元組數,輸出為按位元組擷取的字串。但是要保證漢字不被截半個,如"我abc"4,應該截為"我ab",輸入"我abc漢def"6,應該輸出為"我abc"而不是"我abc+漢的半個"。 

這題其實只要用直接輸出就行,因為字串會自動判斷是不是半個位元組的問題

#include#includeusing namespace std;

int main()

cout << endl;

} return 0;

}

來看這一題,輸出7有關數字的個數,包括7的倍數,還有包含7的數字(如17,27,37...70,71,72,73...)的個數(一組測試用例裡可能有多組資料,請注意處理) 比較簡單,來看**:

#include#includeusing namespace std;

int main()

else

for (int j = 0; j < vec.size(); j++)}}

} cout << n << endl;

} return 0;

}

再來一題:

完全數(perfect number),又稱完美數或完備數,是一些特殊的自然數。

它所有的真因子(即除了自身以外的約數)的和(即因子函式),恰好等於它本身。

例如:28,它有約數1、2、4、7、14、28,除去它本身28外,其餘5個數相加,1+2+4+7+14=28。

給定函式count(int n),用於計算n以內(含n)完全數的個數。計算範圍, 0 

返回n以內完全數的個數。 異常情況返回-1 來看**:

#include#includeusing namespace std;

int main()

}int sum = 0;

for (int j = 0; j < vec.size(); j++)

if (sum == i)

}cout << n << endl;

} return 0;

}

來看到弱智題  輸入n個整數,輸出其中最小的k個。來看**:

#include#include#includeusing namespace std;

int main()

sort(vec.begin(), vec.end());

for (int i = 0; i < b; i++)

else

} }

return 0;

}

來看下一題

#include#include#includeusing namespace std;

int main()

}if (n == 1)

}if (n > 1)

}return 0;

}

再來看一題:任意乙個偶數(大於2)都可以由2個素數組成,組成偶數的2個素數有很多種情況,本題目要求輸出組成指定偶數的兩個素數差值最小的素數對 來看**

#includeusing namespace std;

int main()

}if (n == i)

}if (m == num - i)

}if (ifok == 1)

}else

} }

return 0;

}

#include#include#includeusing namespace std;

int main()

for (int i = 0; i < vec.size(); i++)

}cout << sum << endl;

} return 0;

}

來看這一題:

乙個dna序列由a/c/g/t四個字母的排列組合組成。g和c的比例(定義為gc-ratio)是序列中g和c兩個字母的總的出現次數除以總的字母數目(也就是序列長度)。在基因工程中,這個比例非常重要。因為高的gc-ratio可能是基因的起始點。

給定乙個很長的dna序列,以及要求的最小子序列長度,研究人員經常會需要在其中找出gc-ratio最高的子串行。

題目比較簡單,需要擷取字串函式substr來看具體**

#include#includeusing namespace std;

int main()

}double currate = sum / double(num);

if (currate > rate)

}cout << res << endl;

} return 0;

}

再來一題,不得不說一句,往後走熱度越少,我覺得雖天賦很重要,凡事還是貴在堅持。。。好了來看這題

這題的關鍵在於定位是哪首歌以及歌出現的位置,來看**:

#include#includeusing namespace std;

int main()

else}}

else if (str[i] == 'd')

else}}

}if (locate == 1)

else if (locate == 2)

else if (locate == 3)

else if (locate == 4)

}else

else

}else if (str[i] == 'd')

else}}

for (int i = 1; i <= num; i++)

else

}cout << ini << endl;

} }return 0;

}

再來看一題:查詢兩個字串a,b中的最長公共子串。若有多個,輸出在較短串中最先出現的那個

這題比較簡單 我的思路是先找到起始位置相同的,然後開始自增,比較,返回。來看**

#include#includeusing namespace std;

int main()

int max = 0;

string str;

for (int i = 0; i < str1.size(); i++)

for (int j = 0; j < str2.size(); j++)

}} return 0;

}

來看這一題:

根據輸入的日期,計算是這一年的第幾天。。

詳細描述:

#include#includeusing namespace std;

int main()

; if (a % 4 == 0)

num += c;

} else

num += c;

} cout << num << endl;

} return 0;

}

來看這一題,其實做多了感覺很多都是大同小異      計算兩個字串的最大公共字串的長度,字元不區分大小寫

來看**:

#include#include#includeusing namespace std;

int main()

} for (int i = 0; i < str2.size(); i++)

}for (int i = 0; i < str1.size(); i++)

if (num < n)}}

} cout << num;

} return 0;

}

牛客網(面試題)

每年六一兒童節,牛客都會準備一些小禮物去看望孤兒院的小朋友,今年亦是如此。hf作為牛客的資深元老,自然也準備了一些小遊戲。其中,有個遊戲是這樣的 首先,讓小朋友們圍成乙個大圈。然後,他隨機指定乙個數m,讓編號為0的小朋友開始報數。每次喊到m 1的那個小朋友要出列唱首歌,然後可以在禮品箱中任意的挑選禮...

跳台階 牛客網面試題

乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法 先後次序不同算不同的結果 當每次只跳一級台階時,只有一種情況 當每次只跳兩級台階時,也是只有一種情況 當又跳一級台階又跳兩級台階時,我們可以假設第一步跳一級台階,那麼後面的所有的跳法為f n 1 當第一步跳兩級...

牛客網模擬面試題目彙總

具體工作機制如下 資料庫連線池在初始化時將建立一定數量的資料庫連線放到連線池中,這些資料庫連線的數量是由最小資料庫連線數來設定的。無論這些資料庫連線是否被使用,連線池都將一直保證至少擁有這麼多的連線數量。連線池的最大資料庫連線數量限定了這個連線池能占有的最大連線數,當應用程式向連線池請求的連線數超過...