演算法 紙牌三角形問題的窮舉解決方法及其限界優化

2021-09-02 07:23:04 字數 1219 閱讀 9174

a,2,3,4,5,6,7,8,9 共9張紙牌排成乙個正三角形(a按1計算)。要求每個邊的和相等。

下圖就是一種排法

這樣的排法可能會有很多。

如果考慮旋轉、映象後相同的算同一種,一共有多少種不同的排法呢?

請你計算並提交該數字。

注意:需要提交的是乙個整數,不要提交任何多餘內容。

1、先把這個三角形拉成直線

拿題目中舉例的情況作為演示:將其對映到4*4的二位陣列裡頭可以這樣:

1

6

8

2

9

5

4

7

3

選乙個方向(這裡為順時針方向)拉成直線:可得   

一共有9個位置,故可設9個變數i[1:9]

由此題目要求滿足的條件可表達為:

i1+i2+i3+i4 == i4+i5+i6+i7 &&

i1+i2+i3+i4 == i7+i8+i9+i1 &&

i4+i5+i6+i7 == i7+i8+i9+i1

因為旋轉、映象後相同的算同一種,所以旋轉有3種,映象也有3種,共6種。即是在遍歷求得最終結果除以6

public class 紙牌三角形02 }}

}}}}

}}}system.out.println(count / 6);//旋轉和映象共有6種相同情況所以除於6

紙牌三角形

a,2,3,4,5,6,7,8,9 共 9張紙牌排成乙個正三角形 a按 1計算 要求每個邊的和相等。下圖就是一種排法 如有對齊問題,參看p1.png a9 6483 752這樣的排法可能會有很多。如果考慮旋轉 映象後相同的算同一種,一共有多少種不同的排法呢?請你計算並提交該數字。注意 需要提交的是乙...

紙牌三角形

a,2,3,4,5,6,7,8,9 共9張紙牌排成乙個正三角形 a按1計算 要求每個邊的和相等。下圖就是一種排法 如有對齊問題,參看p1.png a 9 64 83 7 5 2 這樣的排法可能會有很多。如果考慮旋轉 映象後相同的算同一種,一共有多少種不同的排法呢?請你計算並提交該數字。注意 需要提交...

藍橋杯 紙牌三角形

a,2,3,4,5,6,7,8,9 共9張紙牌排成乙個正三角形 a按1計算 要求每個邊的和相等。下圖就是一種排法 如有對齊問題,參看p1.png 這樣的排法可能會有很多。如果考慮旋轉 映象後相同的算同一種,一共有多少種不同的排法呢?請你計算並提交該數字。注意 需要提交的是乙個整數,不要提交任何多餘內...