切換
舊版
前往
大廳
主題

ZeroJudge - e583: 11040 - Add bricks in the wall 解題心得

Not In My Back Yard | 2019-12-30 17:11:28 | 巴幣 0 | 人氣 150

題目連結:


題目大意:
給定一正整數 N ,代表有 N 筆的測試資料,每筆佔五列。測試資料的第一列給定一正整數、第二列給定兩正整數、第三列給定三正整數……。其代表如下圖中由上至下的所有有數字的地方之值(不一定是圖中的值):
而以上的圖有一個規則:從上面開始,第一排到第八排中的每個數字,都是由其下面一層與之相鄰的兩個數字相加所得。

給定此規則以及如附圖中那些位置的值,求完整的圖(保證有解)。輸出格式請參見範例輸出。



範例輸入:
2
255
54 67
10 18 13
3 3 5 2
2 1 2 1 1
256
64 64
16 16 16
4 4 4 4
1 1 1 1 1


範例輸出:
255
121 134
54 67 67
23 31 36 31
10 13 18 18 13
5 5 8 10 8 5
3 2 3 5 5 3 2
2 1 1 2 3 2 1 1
2 0 1 0 2 1 1 0 1
256
128 128
64 64 64
32 32 32 32
16 16 16 16 16
8 8 8 8 8 8
4 4 4 4 4 4 4
2 2 2 2 2 2 2 2
1 1 1 1 1 1 1 1 1


解題思維:
如下圖:

假設紅色三角形中的 2 、 1 中間的數值為 X ,則最上面那格的 3 = 2X + 3 。因此, X = 0 。

其他部分也是同理,因此最底層的數字就解出來了,順帶著倒數第二層也解開了。接著就套用類似的原理到倒數第三層、第五層……最後就全部解出了。

此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。

創作回應

相關創作

更多創作