題目大意:給你乙個神奇的印章,他左右下三個面都是直的,上面是凸凹不平的面(凸凹都平行於別的面)。然後給你乙個輪廓線,如果乙個面能與輪廓線完全重合,可以把印章的這個沿著輪廓線拓印,求所有的拓印方案。
把輪廓線和印章相鄰兩個高度打個查分,然後kmp匹配一下就行了。
#include #include #include #include #define n 10010
#define mod 1000000007
#define ui unsigned int
#define ll long long
#define dd double
#define idx(x) x-'a'+1
using namespace std;
//re
int t,n,m,cnt;
int nxt[3][n];
ui f[n];
int a[n],b[n],s[n],t[3][n];
void get_kmp(int s1,int p)
else
}}int kmp(int s1,int s2,int p)
else
if(j==m)
}return cnt;
}int main()
for(int i=1;ifor(int i=1;ifor(int i=1;iget_kmp(t[0],0),get_kmp(t[1],1),get_kmp(t[2],2);
int ans=0;
ans+=kmp(s,t[0],0);
ans+=kmp(s,t[1],1);
ans+=2*kmp(s,t[2],2);
printf("%d\n",ans);
return 0;
}
codevs3945 完美拓印
題目鏈結 給出乙個詭異的圖形,再給出乙個歪七扭八的線,問圖形上下兩條邊與線的匹配 前後求差然後kmp,這種數字的匹配還是kmp靠譜,hash太容易衝突了。注意可以上下翻轉有4種匹配方式 codevs3945 include include include include include includ...
debian 安裝 3945無線網絡卡驅動
您的一些硬體需要非自由韌體檔案才能操作。韌體可以從可移動介質載入,比如 usb 棒或者軟盤。缺失的韌體檔案是 iwlwifi 3945 1.ucode 如果現在您有可用的介質,請將其插入,然後繼續。是 否 如果沒有,安完系統後,你就得自己安裝了。只要你的debian源夠新,裡面自然有該驅動。一行 a...
CODEVS 電話連線
題目描述 description 乙個國家有n個城市。若干個城市之間有 線連線,現在要增加m條 線 線當然是雙向的了 使得任意兩個城市之間都直接或間接經過其他城市有 線連線,你的程式應該能夠找出最小費用及其一種連線方案。輸入描述 input description 輸入檔案的第一行是n的值 n 10...