無名三(hash規則的特別應用)

2021-08-31 16:26:08 字數 769 閱讀 4698

對於已知的字串t,想在s中找到乙個他的満射,那麼我們就要在s字串中尋找與t字串形式相同的字串,那麼怎麼樣的才是形式相同的字串呢?因此引入乙個特殊的hash規則,對於t串的字元i向後找第乙個與他相同的字串的位置,他們之間的距離(如果沒有相同則為1)乘該位置的xp值,那麼就能得到乙個代表這個形式的數字。

再從s字串中,從頭到尾列舉,每個串,應該的形式,如果相等即可。

#include #include #include #include #include #include #include #include #include #define mod 1000000007

#define ll long long

using namespace std;

const int m=1e6+10;

int lens,lent;

char s[m],t[100005];

const int base=23;

int hs_t;

vectorto[m];

int last[25],xp[100005];

void get_t()

last[t[i]-'a']=i;

hs_t+=tmp*xp[lent-1-i];//位置資訊

}}void get_to()

return 0;

}

雜湊表 Hash 的應用

hs 定義陣列 hs 定義hash表,使用雜湊表的鍵可以直接訪問對應的值,如 hs 王五 或者 hs.王五 的值為 75 hs 定義文字字串 1 hs 2張三 3男412歲 5 hash表的新建 修改 刪除 1 新建hash表 2 rs 3 rs45 rs 6 rs.name lily 7 rs.s...

HASH函式的特點及其應用

hash函式必須具備兩個基本特徵 單向性 和 碰撞約束。單向性是指其的操作方向的不可逆性,在hash函式中是指 只能從輸入推導出輸出,而不能從輸出計算出輸入 碰撞約束是指 不能找到乙個輸入使其輸出結果等於乙個已知的輸出結果 或者 不能同時找到兩個不同的輸入使其輸出結果完全一致。乙個函式只用同時嚴格的...

redis的incr和hash應用

if this redis db incr bj car no 1 elseelse 另外,incr對string型別,hash型別,sortedset型別都可以進行操作 blpop相對於lpop有乙個好處,可以對多個佇列進行優先順序操作。blpop會按照key的排列順序依次彈出,返回值為key的l...