2018 12 22 NOIP提高組 模擬B組總結

2021-09-05 11:12:10 字數 818 閱讀 3295

今天的比賽發現時間掌握不好。。。

第一題:想了2個小時。。。都想到數字dp去了,雖然沒打(但是我瘋了)

打表找規律。比賽時打了個表發現每九個的d()都是一迴圈(1~9)

然後想著怎麼做,先打了個暴力然後在想,沒想到的是:

如果x為喜歡的數的話,那麼x+22680也是喜歡的數。

為什麼?設x=ad(a),那麼x+22680=ad(a)+22680

因為d(a)為1~9中的乙個,所以d(a)為22680的倍數

那麼a*d(a)+22680=(a+22680/d(a))*d(a),所以沒有問題!

所以我們只需要先預處理一下1~22680的喜歡的數即可。

每次l~r手動統計答案即可。

第二題:一眼狀壓dp,但發現轉移方程難以想到&實現,直接棄療

正解為dfs+記憶化,設f[i][j][k]為到了第i行,第i行的狀態為j,

第i+1行的狀態為k,且滿足第i行以前的滿足條件的最小海苔數。

第三題:考場沒想到,然後就打了個dfs+堆,慘烈爆零(t飛+wa)

經過研究發現,對於乙個非葉子節點x,它的所有兒子節點都要小於等於它的最小的那個兒子節點。

然後,我們需要找出乙個m——也就是每個兒子是值。因為要滿足它的兒子節點相同且符合,那麼我們可以設乙個l[x]表示x的兒子的lcm。l[x]=lcm(son[x])*x的兒子個數。那麼m=mi-mi mod (l[x]/兒子的個數)。

總之,這次的比賽時間和思路不對,應該層層遞進,而不是bfs。。。

當想到了一點是要接著想怎麼再利用這一點,如此,應當是可以想出來的。

in general,effort next time!

2018 12 22 NOIP提高組 模擬B組總結

今天的比賽發現時間掌握不好。第一題 想了2個小時。都想到數字dp去了,雖然沒打 但是我瘋了 打表找規律。比賽時打了個表發現每九個的d 都是一迴圈 1 9 然後想著怎麼做,先打了個暴力然後在想,沒想到的是 如果x為喜歡的數的話,那麼x 22680也是喜歡的數。為什麼?設x ad a 那麼x 22680...

NOIP提高組 矩陣

在麥克雷的面前出現了乙個有n m個格仔的矩陣,每個格仔用 或 表示,表示這個格仔可以放東西,則表示這個格仔不能放東西。現在他拿著一條1 2大小的木棒,好奇的他想知道對於一些子矩陣,有多少種放木棒的方案。因為棍子是1 2的,所以很容易就能發現,兩個被分割的塊,除了跨越兩個塊擺放木棍的方案數會對答案有影...

NOIP提高組2005 過河

過河 river 問題描述 在河上有一座獨木橋,乙隻青蛙想沿著獨木橋從河的一側跳到另一側。在橋上有一些石子,青蛙很討厭踩在這些石子上。由於橋的長度和青蛙一次跳過的距離都是正整數,我們可以把獨木橋上青蛙可能到達的點看成數軸上的一串整點 0,1,l 其中l是橋的長度 座標為0的點表示橋的起點,座標為l的...