NOIP2023年普級組試題 火材棒等式

2021-08-30 17:52:52 字數 1087 閱讀 8343

給你n根火柴棍,你可以拼出多少個形如「a+b=c」的等式?等式中的a、b、c是用火柴棍拼出的整數(若該數非零,則最高位不能是0)。用火柴棍拼數字0-9的拼法如圖所示:

注意:加號與等號各自需要兩根火柴棍

如果a≠b,則a+b=c與b+a=c視為不同的等式(a、b、c>=0)

n根火柴棍必須全部用上

輸入檔案matches.in共一行,又乙個整數n(n<=24)。

14
18
輸出檔案matches.out共一行,表示能拼成的不同等式的數目。

2
9
2個等式為0+1=1和1+0=1。

9個等式為: 0+4=4 0+11=11 1+10=11 2+2=4 2+7=9 4+0=4 7+2=9 10+1=11 11+0=11

你先求出每乙個數字(1~1001)所要用的火柴棒數,再把每一種可能性列舉出來,只要成立sum就加一。最後只要輸出sum就ok了。

#include

#include

using

namespace std;

intmain()

;//初始化

scanf

("%d"

,&n)

;//讀入

n-=4;

//把加號和等號所要用的火材棒數減去

for(

int i=

10;i<=

1001

;i++

) a[i]

=a[i%10]

+a[i/10]

;//求出每個數字所要用的火材棒數

for(

int i=

0;i<=

1001

;i++

)for

(int j=

0;j<=

1001

;j++

)printf

("%d"

,sum)

;//輸出

return0;

}

2023年普級組模擬試題 序列

給乙個a序列。當後面乙個是前面乙個的倍數的時候,就成為乙個好序列,求出所有的好序列有多少答案mod 1000000007 很簡單的dp f i,j k f i,j k f i 1,j 表示前i個,當那一位數字為j k的時候的最大好序列數 const maxn 2000 p 1000000007 va...

NOIP 2015 提高組初賽試題胡扯

5 常識 7 顯然b肯定一樣 9 最小生成樹也是樹 10 顯然 11 顯然每條邊和每個點只會被遍歷一次 12 a 21 容斥原理 能被4整除的有503個,被5整除的有403個,被6整除的335個,然後去掉算了兩遍的20,12,30分別100,167,67,120呢則在一開始被加了三遍,後面又被見了三...

Noip2015提高組總結

總體而言noip還行吧,每天前兩題都穩穩地,但是最後一題做得不好。day1,看完題目後,第一題簽到,第二題很直觀想出來了,又畫了個圖驗證了一下,tarjan雖然可能爆棧,但人工棧就沒問題了。第三題認為是dp一類的東西。畢竟是第一次提高組,還是挺緊張的,一二題打得特別仔細特別慢,對拍,肉眼查錯,搞了接...