#P13666. [GCPC 2023] Adolescent Architecture 2
[GCPC 2023] Adolescent Architecture 2
题目描述
Three years ago, you helped little Peter stack his toy blocks into a tower. Since then, he has extended his collection of toy blocks, which now features the following base shapes:
- - a circle of radius ;
- - a square with side length ;
- - an equilateral triangle with side length .
Here, may be any positive integer. The top shapes of each block are the same as their bottom shapes, so the blocks are cuboids, cylinders, and triangular prisms, respectively. Peter has an infinite supply of blocks of each shape and size.
:::align{center} Figure A.1: A game in progress. :::
Peter and his friend Amy are playing a two-player game, where the blocks need to be stacked on top of each other. Initially, some blocks are already placed on the floor. In each move, the current player must take a toy block from the infinite supply and put it on top of one of the existing stacks of blocks. The block may be rotated around its vertical axis before placing it. The outline of the new block must be strictly within the outline of the old block; the outlines are not allowed to touch. The first player who is unable to make a move loses the game.
Given the initial configuration, determine the number of winning moves for the first player.
输入格式
The input consists of:
- One line with an integer (), the number of initial stacks.
- lines, each with a string ( is one of "", "" or "") and an integer (), giving the topmost blocks of the initial stacks as described above.
输出格式
Output the number of winning moves for the first player.
2
circle 2
triangle 2
2
2
circle 1
circle 2
3
5
circle 123
triangle 456
square 789
square 789
triangle 555
7
3
circle 299303201
square 79724391
triangle 437068198
3
3
square 539715887
circle 518408351
triangle 348712924
0
提示
Figure A.2: Illustration of Sample Input 2, showing all possible end configurations of the game when Peter went first and played optimally to win. The blue blocks are the initial configuration. Peter needs to put one of , or on top of in order to win. Each of these options corresponds to one row of the figure. Blocks placed by Peter are coloured in red, and blocks placed by Amy are coloured in yellow. As the last two blocks are always of type , they are shown in grey. If, for instance, Peter first puts (as depicted in the first row), then Peter can win by mirroring the following moves by Amy.