# 纸牌三角形 A,2,3,4,5,6,7,8,9 共9张纸牌排成一个正三角形(A按1计算)。要求每个边的和相等。 下面就是一种排法 ``` A 9 6 4 8 3 7 5 2 ``` 这样的排法可能会有很多。 如果考虑旋转、镜像后相同的算同一种,一共有多少种不同的排法呢? 以下程序实现了这一功能,请你补全以下空白处内容: ```c #include #define ll long long using namespace std; int main() { int a[9] = {1, 2, 3, 4, 5, 6, 7, 8, 9}; int res = 0; do { int x1 = a[0] + a[1] + a[2] + a[3]; int x2 = a[3] + a[4] + a[5] + a[6]; int x3 = a[6] + a[7] + a[8] + a[0]; __________________; } while (next_permutation(a, a + 9)); cout << res / 3 / 2 << endl; return 0; } ``` ## 答案 ```c if (x1 == x2 && x2 == x3) { res++; } ``` ## 选项 ### A ```c if (x1 == x2 || x2 == x3) { res++; } ``` ### B ```c if (x1 == x2 || x1 == x3) { res++; } ``` ### C ```c if (x1 == x2) { res++; } ```