火柴棒等式(洛谷-P1149)
生活随笔
收集整理的這篇文章主要介紹了
火柴棒等式(洛谷-P1149)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
題目描述
給你n根火柴棍,你可以拼出多少個(gè)形如“A+B=C”的等式?等式中的A、B、C是用火柴棍拼出的整數(shù)(若該數(shù)非零,則最高位不能是0)。用火柴棍拼數(shù)字0-9的拼法如圖所示:
注意:
輸入輸出格式
輸入格式:
共一行,又一個(gè)整數(shù)n(n<=24)。
輸出格式:
輸出文件matches.out共一行,表示能拼成的不同等式的數(shù)目。
輸入輸出樣例
輸入樣例#1:?
14
輸出樣例#1:?
2
輸入樣例#2:?
18
輸出樣例#2:?
9
源代碼
#include<iostream> using namespace std; int matchstick(int n);int main() {int n,total=0;int i,j,result;cin>>n;n-=4;//減去加號(hào)、等號(hào)兩根火柴棒for(i=0;i<=999;i++){for(j=0;j<=999;j++){result=i+j;if(matchstick(i)+matchstick(j)+matchstick(result)==n)//三個(gè)數(shù)字的火柴棒個(gè)數(shù)相加=所給火柴棒個(gè)數(shù)時(shí)total++;//計(jì)數(shù)器+1}}cout<<total<<endl;return 0; }int matchstick(int n) {int number[10]={6,2,5,5,4,5,6,3,7,6};//從0-9所需的火柴棒個(gè)數(shù)int sum=0;if(n/10!=0)//計(jì)算每位數(shù)字需要多少火柴棒sum+=number[n%10]+matchstick(n/10);elsesum=number[n%10];return sum; }?
總結(jié)
以上是生活随笔為你收集整理的火柴棒等式(洛谷-P1149)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 图像旋转(信息学奥赛一本通-T1127)
- 下一篇: 信息学奥赛C++语言:十位能被个位和百位