Solutions of Gnimmah distance - MarisaOJ: Marisa Online Judge

Solutions of Gnimmah distance

Select solution language

Write solution here.


User Avatar Long4200    Created at    6 likes

### nhận xét: có phải là B là xâu con của A, nên B sẽ tương ứng với mọi xâu con độ dài |B| trên xâu con A - gọi n, m lần lượt là số lượng kí tự xâu A và B - từ đó ta lưu mỗi vị trí xuất hiện kí tự A[i] vào mảng đánh dấu vị trí gọi là pos[a[i]] - với mỗi b[i] nó chỉ có thể xuất hiện từ vị trí tương ứng trên xâu A là từ i đến n - m + i ta cần đếm - số lượng kí tự b[i] xuất hiện trong vị trí này và cộng vào kết quả code mẫu: cpp#clude<bitsstdc++.h>#defelllonglong#defepbpushbackusingnamespacestd;r<r<lle(123,r<ll>(0));ma(){strga,b;cab;lln=a.size(),m=b.size();for(i=0;i<n;i++){llc=a[i];e[c].pb(i);}llans=0;for(i=0;i<m;i++){llr=n-m+i;lll=i;llc=b[i];aup1=lowerbound(e[c].beg(),e[c].end(),l);aup2=lowerbound(e[c].beg(),e[c].end(),r);if(p1==e[c].end())contue;if(p2==e[c].end())--p2;if(p2>r){--p2;if(p2<p1)contue;}llsize=p2-p1+1;ans+=size;}coutans;}