编程题
天平 ### 题目描述 你有 $n$ 个砝码,均为 $1$ 克,$2$ 克或者 $3$ 克。你并不清楚每个砝码的重量,但你知道其中一些砝码重量的大小关系。你把其中两个砝码 $A$ 和 $B$ 放在天平的左边,需要另外选出两个砝码放在天平的右边。问:有多少种选法使得天平的左边重($c_1$)、一样重($c_2$)、右边重($c_3$)?(只有结果保证惟一的选法才统计在内) ### 输入描述 第一行包含三个正整数$n,A,B$($1 \leq A,B \leq N$,$A$ 和 $B$ 不相等)。砝码编号为 $1 \sim N$。 以下 $n$ 行包含重量关系矩阵,其中第 $i$ 行第 $j$ 个字符为加号“+”表示砝码 $i$ 比砝码 $j$重,减号“-”表示砝码 $i$ 比砝码 $j$ 轻,等号“=”表示砝码 $i$ 和砝码 $j$ 一样重,问号“?”表示二者的关系未知。存在一种情况符合该矩阵。 其中, $4 \leq n \leq 50$。 ### 输出描述 输出仅一行,包含三个整数,即 $c_1,c_2和c_3$。 ### 输入输出样例 #### 示例 1 >输入 ```txt 6 2 5 ?+???? -?+??? ?-???? ????+? ???-?+ ????-? ``` >输出 ```txt 1 4 1 ```
查看答案
赣ICP备20007335号-2