codeforces 24 Game(數學構造)

2021-07-15 10:46:50 字數 760 閱讀 2002

題意:給你乙個數字n,1,2,3,4......,n-1,n在乙個集合裡,每次拿出兩個數進行加或者減或者乘三種操作,每次操作結果再放入集合中,問能不能使集合最後剩下的那個數是24!不能輸出「no」,能輸出「yes」,並且輸出步驟!

分析:題目做著做著越覺得神奇了!!看到這題一頭霧水(我還是太年輕了),看了大神的提點,才恍然大悟!!感嘆現在人的腦洞真的好大啊!!關鍵在於湊1!!湊1!!【具體看**!】

examples

input

1

output

no

input

8

output

yes

8 * 7 = 56

6 * 5 = 30

3 - 4 = -1

1 - 2 = -1

30 - -1 = 31

56 - 31 = 25

25 + -1 = 24

#include#include#include#includeusing namespace std;

int main()

printf("yes\n");

if(n%2)

while(cnt--)

}else

while(cnt--)

}} return 0;

}

cf 24 Game 觀察 想一想

題意 給乙個數n,從1到n。每次取兩個數,三種操作 加 減 乘,運算完得乙個數,把那倆數刪了,把這個數加進去。重複操作n 1次。問是否可能得到24。若可以,輸出每一步操作。思路 小於4,不行。大於等於4 偶數 1,2,3,4可以搞出24,剩下偶數個數相鄰相減得1,每次與24相乘即可。奇數 1,2,3...

24 蛇形填數

題目 在n n 方陣裡填入1,2,n n。要求填成蛇形。例如,n 4時方陣為 10 11 12 1 9 16 13 2 8 15 14 3 7 6 5 4 上面的方陣中,多餘的空格只是為了便於觀察規律,不必嚴格輸出。n 8。思路 由題目可知,矩陣為方陣,因此用二維陣列儲存,同時將所有位置的值初始化為...

CodeForces 540B 填數找中位數

題意 第一行 n,k,p,x,y,有n個任務,已經完成了k個任務,完成任務最大得分為p,最大得分總和是x,眾多分數得分的中位數是y,問剩下的任 務該得多少分才能保證分數總和不大於x,而且中位數不小於y。如果不可能出現這種情況則輸出 1。輸入 5 3 5 18 4 3 5 4 5 3 5 16 4 5...