HDU 1800 字串雜湊

2021-07-30 07:16:18 字數 670 閱讀 4240

從n個數中,最少能分出幾個單調遞增序列。

水題。就是找到n個數中出現次數最多的次數。

只是n個數範圍有30個十進位制位,需要當成字串處理,這就用到了字串雜湊。

#include 

using

namespace

std;

const

int maxn = 3005;

const

int mod = 100007;

struct node ;

struct strhash

unsigned

int bkdhash(char* s)

int getid(char* s)

strcpy(cur->str, s);

cur->nxt = head[code];

head[code] = cur++;

return cur - hash - 1;

}int find(char* s)

return -1;

}} strhash;

char s[100];

int cnt[maxn];

int main()

printf("%d\n", ans);

}return

0;}

hdu 1800 簡單字串處理

這道題題目如果想對了,那麼就簡單了,簡單說一下 1 等級高的可以在同一木棒上教等級低的,最多只能教乙個,當然也可以選擇不教 2 徒弟最多只能有乙個師傅,但沒有師傅也是可以的 3 問最少需要多少個木棒 貪心思想,也就是只要找到出現次數最多的那個數就行,因為乙個師傅最多只能教乙個徒弟,而且乙個徒弟最多只...

HDU1800 字典樹寫法

題意 高階魔法師可以教低階魔法師 魔法掃把技能,同時教會了的低階魔法師又可以教比他更低階是,是傳遞的關係 同時如果教會了的話,他們可以同時坐乙個掃把 問最少需要多少個掃把 思路 就是判斷相同的數字最多的是幾個 他們分別乘坐乙個掃把,這樣其他的也能合理分配進這幾個掃把 坑 這裡剛開始陣列開得過大總超時...

hdu2920 字串雜湊

模式串中 把它分成一截截,當某一截在s串中多個位置能找到匹配,找第乙個匹配點,貪心 因為當中間有 可以利用它跳過一些字元,當遇到 先跳過乙個字元,其他的一截截貪心去找到匹配位置,若最後剩餘偶數個字元,則match 第一截和最後一截如果是非 和 必須嚴格匹配 找來的雜湊寫法 include inclu...