時間限制: 4000ms 記憶體限制: 256mb
對於兩個長度相等的字串,我們定義其距離為對應位置不同的字元數量,同時我們認為距離越近的字串越相似。例如,「0123」和「0000」的距離為 3,「0123」和「0213」的距離則為 2,所以與「0000」相比,「0213」和「0123」最相似。
現在給定兩個字串 s1 和 s2,其中 s2 的長度不大於 s1。請在 s1 中尋找乙個與 s2 長度相同的子串,使得距離最小。
輸入包括多組資料。第一行是整數 t,表示有多少組測試資料。每組測試資料恰好佔兩行,第一行為字串 s1,第二行為 s2。所有字串都只包括「0」到「9」的字元。
對於每組測試資料,單獨輸出一行「case #c: d」。其中,c 表示測試資料的編號(從 1 開始),d 表示找到的子串的最小距離。
1 ≤ t ≤ 100
小資料:字串長度不超過 1000
大資料:字串長度不超過 50000
樣例輸入
3樣例輸出0123456789
321010203040506070809
40420121221
211
case #1: 2case #2: 1
case #3: 1
暴力過了小資料:
#include #include #include #include char s1[50000],s2[50000];using namespace std;
int main()
if(ans > maxx)
}printf("case #%d: %d\n",case++,len2-maxx);
}return 0;
}
2013程式設計之美全國挑戰賽
description alice和bob都要向同乙個商人購買鑽石。商人手中有 n 顆鑽石,他會將它們一顆顆地賣給他們,alice和bob通過競價的方式來決定鑽石的歸屬。具體的過程如下 商人首先指定其中乙個人開始 之後兩人輪流 要求是一定要比對方報的 更高。任何時候,如果乙個人不願出價或者出不起價錢...
2013程式設計之美全國挑戰賽
description 對於兩個長度相等的字串,我們定義其距離為對應位置不同的字元數量,同時我們認為距離越近的字串越相似。例如,0123 和 0000 的距離為 3,0123 和 0213 的距離則為 2,所以與 0000 相比,0213 和 0123 最相似。現在給定兩個字串 s1 和 s2,其中...
2013程式設計之美全國挑戰賽 競價
description alice和bob都要向同乙個商人購買鑽石。商人手中有 n 顆鑽石,他會將它們一顆顆地賣給他們,alice和bob通過競價的方式來決定鑽石的歸屬。具體的過程如下 商人首先指定其中乙個人開始 之後兩人輪流 要求是一定要比對方報的 更高。任何時候,如果乙個人不願出價或者出不起價錢...