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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

算法—回溯法桥本分数式

發(fā)布時(shí)間:2023/12/1 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 算法—回溯法桥本分数式 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
/* 將1-9九個(gè)數(shù)不重復(fù)地賦給不同的9個(gè)元素 ,實(shí)現(xiàn)形如a/bc+d/ef=f/hi 的形式:例:1/26+5/78=4/39 1/32+5/96=7/84 (注意:1/26+5/78=4/39 和5/78+1/26=4/39 只能算一種解)求滿足條件的解共有多少個(gè)? */ #include "stdio.h" void main() {int i,k,g,s;int m1,m2,m3,a[10];a[1]=1;i=1;g=1;s=0;while(1){g=1;for(k=i-1;k>0;k--) //注意此處很容易由于習(xí)慣錯(cuò)寫成 for(k=i-1;i>0;i--)if(a[k]==a[i]) {g=0; break;} //兩數(shù)相同,標(biāo)記g=0if(i==9 && g==1 && a[1]<a[4]){ //為了避免解的重復(fù)所以a[1]<a[4]m1=a[2]*10+a[3];m2=a[5]*10+a[6];m3=a[8]*10+a[9]; if(a[1]*m2*m3+a[4]*m1*m3==a[7]*m1*m2){s++;printf("%d/%d+%d/%d=%d/%d \t",a[1],m1,a[4],m2,a[7],m3);if(s%2==0) printf("\n");} } if(i<9 &&g==1){i++; a[i]=1; continue;} //向前繼續(xù)走,執(zhí)行continue語句直接跳到while語句,則不在執(zhí)行下面的語句 while(a[i]==9 && i>1) i--; //向上一步回溯 if(a[i]==9 && i==1) break; //注意此處不能簡寫成 if(a[1]==9)else a[i]++; }printf("共有%d個(gè)解!",s); }

總結(jié)

以上是生活随笔為你收集整理的算法—回溯法桥本分数式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。