密文搜尋
描述:福爾摩斯從x星收到乙份資料,全部是小寫字母組成。
他的助手提供了另乙份資料:許多長度為8的密碼列表。
福爾摩斯發現,這些密碼是被打亂後隱藏在先前那份資料中的。
請你編寫乙個程式,從第乙份資料中搜尋可能隱藏密碼的位置。要考慮密碼的所有排列可能性。
資料格式:
輸入第一行:乙個字串s,全部由小寫字母組成,長度小於1024*1024
緊接著一行是乙個整數n,表示以下有n行密碼,1<=n<=1000
緊接著是n行字串,都是小寫字母組成,長度都為8
要求輸出:
乙個整數, 表示每行密碼的所有排列在s中匹配次數的總和。
例如:
使用者輸入:
aaaabbbbaabbcccc
2 aaaabbbb
abcabccc
則程式應該輸出:
4 思路:直接拿map搞就行了。
詳細見**:
#include#include#include#include#include#include#include#includeusing namespace std;
#define inf 1.0e14;
const int maxn = 1024*1024+100;
typedef long long ll;
struct node
node(const node &a)
};bool operator <(const node &a,const node &b)
mapm;
node a[maxn];
char str[maxn];
int main()
scanf("%d",&n);
int ans=0;
char s[10];
while(n--){
cout<
第六屆藍橋杯決賽試題 密文搜尋
福爾摩斯從x星收到乙份資料,全部是小寫字母組成。他的助手提供了另乙份資料 許多長度為8的密碼列表。福爾摩斯發現,這些密碼是被打亂後隱藏在先前那份資料中的。請你編寫乙個程式,從第乙份資料中搜尋可能隱藏密碼的位置。要考慮密碼的所有排列可能性。資料格式 輸入第一行 乙個字串s,全部由小寫字母組成,長度小於...
居民集會 第六屆藍翔杯決賽題
居民集會 藍橋村的居民都生活在一條公路的邊上,公路的長度為l,每戶家庭的位置都用這戶家庭到公路的起點的距離來計算,第i戶家庭距起點的距離為di。每年,藍橋村都要舉行一次集會。今年,由於村里的人口太多,村委會決定要在4個地方舉行集會,其中3個位於公路中間,1個位最公路的終點。已知每戶家庭都會向著遠離公...
第六屆藍橋盃國賽C B組 密文搜尋
福爾摩斯從x星收到乙份資料,全部是小寫字母組成。他的助手提供了另乙份資料 許多長度為8的密碼列表。福爾摩斯發現,這些密碼是被打亂後隱藏在先前那份資料中的。請你編寫乙個程式,從第乙份資料中搜尋可能隱藏密碼的位置。要考慮密碼的所有排列可能性。資料格式 輸入第一行 乙個字串s,全部由小寫字母組成,長度小於...