這題其實就是把輸入的棋盤放到乙個二維陣列,然後統計出每個字母出現的次數,然後再把要尋找的單詞放入乙個二維陣列,再統計要尋找的單詞中每個字母出現的次數,然後求出剩下的字母,再按字母順序輸出。
為什麼是這樣就行了呢,因為題目已經說了「 輸入保證填詞遊戲至少有一組答案 」,這句話的意思就是輸入的每行單詞在原來的棋盤裡面都肯定能找到,於是我們就只需要管輸入的各個字母的總數就行了。
我覺得這個題目很坑爹,因為我很難搞明白題目到底要表達什麼。
本人已ac**如下
#include
int main()
for(int i=0;i matrix[i]=new char[b+1];
scanf("%s",matrix[i]);
for(int j=0;jint d=(int)(matrix[i][j]-'a');
biaozhi[d]+=1;}}
for(int i=0;imatrix2[i]=new char[21];
scanf("%s",matrix2[i]);
int j=0;
while(matrix2[i][j]!='\0')
}for(int i=0;i<26;i++)}
return 0;
}
百練2801 填詞
總時間限制 1000ms 記憶體限制 65536kb 描述 alex喜歡填詞遊戲。填詞是遊戲是乙個非常簡單的遊戲。填詞遊戲包括乙個n m大小的矩形方格盤和p個單詞。玩家需要把每個方格中填上乙個字母使得每個單詞都能在方格盤上找到。每個單詞都能找到要滿足下面的條件 每個方格都不能同時屬於超過乙個的單詞。...
poj 百練 2801填詞
總時間限制 1000ms 記憶體限制 65536kb 描述 alex喜歡填詞遊戲。填詞是遊戲是乙個非常簡單的遊戲。填詞遊戲包括乙個n m大小的矩形方格盤和p個單詞。玩家需要把每個方格中填上乙個字母使得每個單詞都能在方格盤上找到。每個單詞都能找到要滿足下面的條件 每個方格都不能同時屬於超過乙個的單詞。...
百練POJ 2801 填詞
分析 這道題的巧妙之處在於輸入保證填詞遊戲至少有一組答案 這說明我們不必尋找單詞所在的位置,只要去掉這些單詞所占用的字母就可以了。神秘單詞 按字典序給出,則只要定義乙個有26個元素的陣列,記錄每個字母出現的次數,當讀入單詞時,相應字母的元素值減一即可。最後將陣列中非0的元素對應字母一次輸出。注意 如...