這道題題目如果想對了,那麼就簡單了,
簡單說一下:(1)等級高的可以在同一木棒上教等級低的,最多只能教乙個,當然也可以選擇不教
(2)徒弟最多只能有乙個師傅,但沒有師傅也是可以的
(3)問最少需要多少個木棒
貪心思想,也就是只要找到出現次數最多的那個數就行,因為乙個師傅最多只能教乙個徒弟,而且乙個徒弟最多只能有乙個師傅,所以如果乙個數出現次數大於1次,那麼就要放到另一根木棒上去了,
關鍵是輸入 的是乙個字串,最多30位,而且還有前導0 : 000324 和0324 和324 是一樣的;
附上**:
#include #include #include #include #include using namespace std;
char str[3300][50];
int cmp(const void *a,const void *b)
int main()
{ int n;
while(cin>>n)
{ int i,j;
for( i=0;i
HDU 1800 字串雜湊
從n個數中,最少能分出幾個單調遞增序列。水題。就是找到n個數中出現次數最多的次數。只是n個數範圍有30個十進位制位,需要當成字串處理,這就用到了字串雜湊。include using namespace std const int maxn 3005 const int mod 100007 stru...
簡單字串的處理
字串處理.cpp 定義控制台應用程式的入口點。1.把每個單詞的首字母變為大寫。2.把數字與字母之間用下劃線字元 分開,使得更清晰 3.把單詞中間有多個空格的調整為1個空格。例如 使用者輸入 you and me what cpp2005program 則程式輸出 you and me what cp...
簡單字串
給你乙個由 0 9 組成的字串s 1 s 的長度 100 和乙個正整數n 1 n 3 我們將所有的 0 都看成空格。這樣你就得到幾個分隔開來的字串。輸出第n個字串。題目保證分隔開來的字串的數量大於等於n。input 第一行輸入正整數t 1 t 100 代表t組測試資料。對於每一組測試資料由一行組成 ...