日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

虫食算(洛谷-P1092)

發布時間:2025/3/17 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 虫食算(洛谷-P1092) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題目描述

所謂蟲食算,就是原先的算式中有一部分被蟲子啃掉了,需要我們根據剩下的數字來判定被啃掉的字母。

現在,我們對問題做兩個限制:

首先,我們只考慮加法的蟲食算。這里的加法是N進制加法,算式中三個數都有N位,允許有前導的0。

其次,蟲子把所有的數都啃光了,我們只知道哪些數字是相同的,我們將相同的數字用相同的字母表示,不同的數字用不同的字母表示。如果這個算式是N進制的,我們就取英文字母表午的前N個大寫字母來表示這個算式中的0到N-1這N個不同的數字:但是這N個字母并不一定順序地代表0到N-1)。輸入數據保證N個字母分別至少出現一次。

上面的算式是一個4進制的算式。很顯然,我們只要讓ABCD分別代表0123,便可以讓這個式子成立了。你的任務是,對于給定的N進制加法算式,求出N個不同的字母分別代表的數字,使得該加法算式成立。輸入數據保證有且僅有一組解

輸入輸出格式

輸入格式:

包含四行。第一行有一個正整數N(N<=26),后面的3行每行有一個由大寫字母組成的字符串,分別代表兩個加數以及和。這3個字符串左右兩端都沒有空格,從高位到低位,并且恰好有N位。

輸出格式:

包含一行。在這一行中,應當包含唯一的那組解。解是這樣表示的:輸出N個數字,分別表示A,B,C……所代表的數字,相鄰的兩個數字用一個空格隔開,不能有多余的空格。

輸入輸出樣例

輸入樣例#1:

5
ABCED
BDACE
EBBAA

輸出樣例#1:

1 0 3 4 2

源代碼

#include<string> #include<iostream> #include<cstring> using namespace std; int n; int res[26];//保存A.B..Z代表的數字 int used[26];//保存這個對應數字是否被用 string a,b,c;//保存加數1,加數2,和 int flag=0; char pos[26]; int used_letter[26];//保存用過的字母int Check() {int i;for (i=n-1;i>=0;i--)//判斷是否滿足a+b=c{char a1=a[i]-'A',b1=b[i]-'A',c1=c[i]-'A';//取三個數第i位置值if(res[a1]!=-1 && res[b1]!=-1 && res[c1]!=-1)//3個數都知道{if( (res[a1]+res[b1])%n!=res[c1] && (res[a1]+res[b1]+1)%n!=res[c1])//無進位與有進位return 0;}if(res[a1]!=-1 && res[b1]!=-1 && res[c1]==-1)//知道2個數{int sum1,sum2;//sum1無進位,sum2有進位sum1=(res[a1]+res[b1])%n;sum2=(res[a1]+res[b1]+1)%n;if(used[sum1] && used[sum2])return 0;}if(res[a1]!=-1 && res[b1]==-1 && res[c1]!=-1)//知道和與一個加數{int js1,js2;//js1無進位,js2有進位js1=(res[c1]-res[a1]+n)%n;js2=(res[c1]-res[a1]-1+n)%n;if (used[js1] && used[js2])return 0;}if(res[a1]==-1 && res[b1]!=-1 && res[c1]!=-1)//知道和與另一個加數{int js1,js2;//js1無進位,js2有進位js1 = (res[c1]-res[b1]+n)%n;js2 = (res[c1]-res[b1]-1+n)%n;if (used[js1] && used[js2])return 0;}}return 1; }int OK() {int i;int carry=0;//進位int sum;//和for (i=n-1; i>=0; i--){char a1=a[i]-'A',b1=b[i]-'A',c1=c[i]-'A';sum = (res[a1]+res[b1]+carry)%n;//計算和carry =( res[a1]+res[b1]+carry)/n;//計算進位if (sum!=res[c1])return 0;}if (carry>0)return 0;return 1; } void dfs(int k)//深搜 {int i;if (flag)return;if (!Check())return;if(k==n){if (OK())//如果當前所有字母填數滿足等式則輸出{for(i=0; i<=n-2; i++)cout<<res[i]<<' ';cout<<res[n-1]<<endl;flag=1;}return ;}for (i=n-1; i>=0; i--){if (!used[i])//如果i還沒被占用,且滿足剪枝條件,則進行下層遍歷{used[i]=1;res[pos[k]]=i;dfs(k+1);used[i]=0;res[pos[k]]=-1;}}return ; }int main() {int k=0,i;cin>>n;cin>>a>>b>>c;memset(res,-1,sizeof(res));memset(pos,-1,sizeof(pos));for (i=n-1; i>=0; i--)//從右向左{char a1=a[i]-'A',b1=b[i]-'A',c1=c[i]-'A';//全部轉成對應數字下標if (!used_letter[a1])//從上往下{used_letter[a1]=1;pos[k++] = a1;}if (!used_letter[b1]){used_letter[b1]=1;pos[k++] = b1;}if (!used_letter[c1]){used_letter[c1]=1;pos[k++] = c1;}}dfs(0);return 0; }

?

總結

以上是生活随笔為你收集整理的虫食算(洛谷-P1092)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 无码国产精品一区二区高潮 | 国产麻豆影视 | 好吊妞视频这里只有精品 | 加勒比视频在线观看 | 精品福利电影 | 欧美 国产 综合 | 国产色秀视频 | 免费av网址在线 | 少妇久久久久 | 亚洲成人av免费在线观看 | 国产91免费观看 | 色呦呦一区二区三区 | 欧美性激情 | 好爽快一点高潮了 | 欧美三级国产 | 色呦呦日韩精品 | 超碰在 | 91天堂在线观看 | 国产51自产区 | 韩日一区二区 | 中国女人内谢69xxxxⅹ视频 | 啦啦啦免费高清视频在线观看 | 精品伦一区二区三区 | 日韩中文字幕精品 | 国产人与zoxxxx另类 | 亚洲精品高清在线 | 西西人体44www大胆无码 | 亚洲aa在线 | 成人欧美一区二区三区 | 欧美日韩免费在线观看 | 中文字幕av专区dvd | 欧美日韩中文字幕在线 | 午夜不卡视频 | jav中文字幕 | 天天爱夜夜爽 | 日本高清一区二区视频 | 在线天堂www在线国语对白 | 麻豆人妻少妇精品无码专区 | 丰满白嫩尤物一区二区 | 一区二区视频免费观看 | 色欲狠狠躁天天躁无码中文字幕 | 国产无遮挡又黄又爽免费网站 | 国产激情一区二区三区四区 | 欧美手机在线 | 日韩欧美三级在线观看 | 久久精品成人一区二区三区蜜臀 | 亚洲国产理论 | 日本黄色美女 | 午夜视频免费在线 | 国产精品伦子伦免费视频 | 欧美成人一级视频 | 中文在线字幕免费观 | xxx.国产| 又紧又大又爽精品一区二区 | 日本人dh亚洲人ⅹxx | 久久精品韩国 | 原创少妇半推半就88av | 四虎在线影视 | 黄色精品视频在线观看 | 最好看的电影2019中文字幕 | 森泽佳奈作品在线观看 | 欧美日韩国产免费 | 精品人伦一区二区三区蜜桃网站 | 人与动物黄色片 | 久久久久久久久精 | 欧美亚洲综合网 | 伊人色区 | 欧美亚洲伦理 | 九九热精彩视频 | 美脚の诱脚舐め脚视频播放 | 免费黄色在线观看 | 天天摸天天操天天射 | 欧美日韩国产一区二区在线观看 | 狠狠干免费视频 | 欧美成人女星 | 手机在线视频一区 | 韩国女同性做爰三级 | 四川丰满少妇被弄到高潮 | jizz少妇 | 免费精品无码AV片在线观看黄 | 国产tv在线观看 | 动漫美女被到爽流 | 午夜99| 狠操av | 亚洲天堂网站 | jizz视频在线观看 | 日本激情视频在线 | 国产高清一二三区 | 欧美69视频 | 影视先锋av资源 | 久久亚洲精品视频 | 久草影视在线 | 黄色av网址在线 | 精品一区二区三区久久久 | 3d动漫啪啪精品一区二区中文字幕 | 懂色av一区二区三区四区五区 | 不卡一区二区在线视频 | 俄罗斯色片 | 一级黄色欧美 |