題目傳送門:
【題目大意】給定乙個字母組成的加法豎式,蟲子把所有的數都啃光了,我們只知道哪些數字是相同的,我們將相同的數字用相同的字母表示,不同的數字用不同的字母表示。如果這個算式是n進製的,我們就取英文本母表的前n個大寫字母來表示這個算式中的0到n-1這n個不同的數字:但是這n個字母並不一定順序地代表0到n-1。輸入資料保證n個字母分別至少出現一次。
badc
+ cbda
------
dccc
#includeusing namespace std;
int n;
string s[4];
//mapmp;
int mp[30];
int vis[27];
bool flag = false;
void dfs(int row,int col, int jw)
flag = true;
return ;
} //針對已經映**的字母對應的數字,預見col-1 ->0高位部分是否可行
for(int i = col-1; i>=0; i--)
if(mp[s[row][col]-'a'] == -1)
else
}} }
else
else }}
int main()
NOIP 2004 蟲食算題解
時間限制 1 sec 記憶體限制 128 mb 所謂蟲食算,就是原先的算式中有一部分被蟲子啃掉了,需要我們根據剩下的數字來判定被啃掉的字母。來看乙個簡單的例子 43 98650 45 8468 6633 44445506978 其中 號代表被蟲子啃掉的數字。根據算式,我們很容易判斷 第一行的兩個數字...
P1092 蟲食算 題解(dfs 深度優先搜尋)
所謂蟲食算,就是原先的算式中有一部分被蟲子啃掉了,需要我們根據剩下的數字來判定被啃掉的字母。來看乙個簡單的例子 43 9865 045 8468 6633 44445509678其中 號代表被蟲子啃掉的數字。根據算式,我們很容易判斷 第一行的兩個數字分別是55和33,第二行的數字是55。現在,我們對...
P1092 蟲食算 題解 DFS 深度優先搜尋
這道題一開始自己寫的時候,只有30分 然後參 模 考 仿 了洛谷第乙個題解才寫出來了 不過是在理解了的前提下,自己敲了一遍 下面附上參考的題解部落格位址 參考的題解部落格 我的 include using namespace std int n,cnt char s1 50 s2 50 s3 50 ...