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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

hdu3699(不等式dfs)

發布時間:2025/3/15 编程问答 11 豆豆
生活随笔 收集整理的這篇文章主要介紹了 hdu3699(不等式dfs) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題意:

給出三個串,只由A~E組成,每個串的長度最長是8,字符相同代表那個位置的數字相同,數字可以是0~9,例如:

ABBDE() ABCCC=BDBDE 可以是12245+12000=24245

()位置可以填+、-、*、\,問你有多少種填法。


思路:

dfs,最多只由五種字母,我們就把每種字母都代表什么都試一遍,統計結果即可。


代碼:

#include<cstdio> #include<cstring> #include<iostream> #include<cstring> #include<cstdlib> #include<cmath> #include<string> #include<queue> #include<vector> #include<map> #include<stack> #include<climits> #include<sstream> #include<algorithm>const int maxn=30;int a[maxn]; int b[maxn]; int c[maxn]; int num[maxn]; int vis1[maxn]; int vis2[maxn];char s[20]; int lena,lenb,lenc; void _make(int f) {int len=strlen(s); // printf("%d\n",len);if(f==1){memset(a,0,sizeof a);for(int i=0;i<len;i++){a[i]=s[i]-'A';vis1[a[i]]=1;lena=len;}lena--;}if(f==2){memset(b,0,sizeof b);for(int i=0;i<len;i++){b[i]=s[i]-'A';vis1[b[i]]=1;lenb=len;}lenb--;}if(f==3){memset(c,0,sizeof c);for(int i=0;i<len;i++){c[i]=s[i]-'A';vis1[c[i]]=1;lenc=len;}lenc--;}return ; }int check() {if(lena>0&&num[a[0]]==0)return 0;if(lenb>0&&num[b[0]]==0)return 0;if(lenc>0&&num[c[0]]==0)return 0;return 1; }int tx,ty,tz; void sovle() {for(int i=0;i<=lena;i++)tx=tx*10+num[a[i]];for(int i=0;i<=lenb;i++)ty=ty*10+num[b[i]];for(int i=0;i<=lenc;i++)tz=tz*10+num[c[i]]; }int _count() {if(!check())return 0;tx=0,ty=0,tz=0;sovle();int sum=0;if(tx+ty==tz){// printf("%d+%d=%d\n",tx,ty,tz);sum++;}if(tx-ty==tz){// printf("%d-%d=%d\n",tx,ty,tz);sum++;}if(tx*ty==tz){// printf("%d*%d=%d\n",tx,ty,tz);sum++;}if(ty!=0&&tz*ty==tx){// printf("%d/%d=%d\n",tx,ty,tz);sum++;}return sum; }int ans; void dfs(int x) {if(x==5){int flag=_count();if(flag)ans+=flag;return ;}if(vis1[x]){for(int i=0;i<=9;i++){if(!vis2[i]){vis2[i]=1;num[x]=i;dfs(x+1);vis2[i]=0;}}}elsedfs(x+1); }int main() {int t;scanf("%d",&t);while(t--){memset(vis1,0,sizeof vis1);for(int i=1;i<=3;i++){scanf("%s",s);_make(i);} // printf("%d %d %d\n",lena,lenb,lenc);memset(vis2,0,sizeof vis2);ans=0;dfs(0);printf("%d\n",ans);}return 0; }

總結

以上是生活随笔為你收集整理的hdu3699(不等式dfs)的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 中文日韩字幕 | 让男按摩师摸好爽视频 | 人人干人人舔 | 久草综合在线 | 暖暖av| 国产精品911| 亚洲欧洲精品一区二区 | 奇米视频在线观看 | 黄色片在线观看视频 | 久久久久久久久久久久Av | 色综合亚洲 | 贵族女沦为官妓h呻吟 | 桃色成人网 | 国产男男一区二区三区 | 极品色综合 | 欧美日本一区二区 | 大尺度做爰呻吟舌吻情头 | 色哟哟视频在线观看 | 国产精品久久久久桃色tv | 久久久欧美精品sm网站 | 18成人在线观看 | 国产成人精品一区二区在线观看 | 宅男视频在线免费观看 | 精品久久中文 | 中国男女全黄大片 | 中文字幕亚洲欧美日韩 | 国产电影一区在线观看 | 影音先锋在线中文字幕 | 宝贝乖h调教灌尿穿环 | 91视频免费网站 | 老湿机69福利区午夜x片 | 国产成人精品在线观看 | av999| 欧美一区二区国产 | 亚洲综合色一区二区 | 国产情侣激情 | 爆操网站 | 亚洲国产欧美在线观看 | 日韩成人无码 | 综合网在线观看 | 亚洲美女自拍视频 | 1级片在线观看 | 青青青视频在线 | 亚洲精品久久久久av无码 | 最新中文字幕在线 | 热久久久久| 日韩一区二区三区免费在线观看 | 久久国产精品首页 | 日韩精品一区二区三区免费视频 | 国产全肉乱妇杂乱视频 | 午夜在线 | 久久丁香网 | 日本高清三区 | 91九色精品 | 好男人视频www | com国产 | 天天干天天舔天天操 | 中文字幕精品久久久久人妻红杏1 | 不卡视频在线观看 | 亚洲成人中文字幕在线 | 久久一级片 | 久久亚洲免费 | 久久高清精品 | 美女被娇喘视频 | 亚洲欧美不卡 | 牛牛在线| 中国少妇av | 亚洲天堂免费在线 | 成人免费影视网站 | 欧美一级在线免费 | 完美搭档在线观看 | 国产高清99 | 久久精品这里有 | 综合久久av | 成人免费版 | 91久久免费视频 | 日本少妇激三级做爰在线 | 蜜臀久久99精品久久久画质超高清 | 黑人巨大猛烈捣出白浆 | 中文亚洲av片不卡在线观看 | 久久伊人国产 | 中文久久字幕 | 波多野结衣一区二区三区高清 | 中文在线第一页 | 91高清视频在线观看 | 丰满少妇av | 亚洲精品视频播放 | 波多野结衣免费观看视频 | 欧美精品影院 | 精品无码久久久久成人漫画 | 久久dvd| 免费特级毛片 | 青青青网 | 伊人www| av电影在线观看不卡 | 日韩 中文字幕 | 亚洲精品污一区二区三区 | youjizz.com中国| 狠狠躁|