uoj#P511. 【JOISC2020】制作团子
【JOISC2020】制作团子
这是一道提交答案题
你是制作团子的专家。你现在有若干个团子和竹签,团子被整体摆放在一个$R$行$C$列的格子里,每个格子恰好有一个团子。团子颜色为粉色($P$),白色($W$),绿色($G$)。
你每次会选择三个连续的团子,这三个团子必须沿着竖直方向(从上往下),水平方向(从左往右)或者对角线方向(从左上至右下,或从右上至左下)。例如,如果你选择了竖直方向的三个团子,你会按照上-中-下的顺序依次将团子串到竹签上。一个团子只能被串在一根竹签上。
一串团子是漂亮的当且仅当竹签上串的团子的颜色依次为粉-白-绿或者绿-白-粉。
你想要制作尽量多的漂亮的团子。
输入格式
这是一道提交答案题,共有 $6$ 组输入数据,这些数据命名为 input_01.txt
~ input_06.txt
。
第一行两个正整数$R,C$。
接下来$R$行,每行$C$个字符,表示团子的颜色。第$i+1$行的第$j$个字符代表着第$i$行第$j$列的团子颜色。
输出格式
对于每组输入数据,你需要提交相应的输出文件 output_01.txt
~ output_06.txt
。
$R$行,每行一个长度为$C$的仅包含'P','W','G','|','-','/','\'的字符串,含义如下:
- 若字符为'|',表示一个使用上方的格子,当前格子,下方的格子的一串团子
- 若字符为'-',表示一个使用左方的格子,当前格子,右方的格子的一串团子
- 若字符为'\',表示一个使用左上方的格子,当前格子,右下方的格子的一串团子
- 若字符为'/',表示一个使用右上方的格子,当前格子,左下方的格子的一串团子
- 否则字符为输入中该团子的颜色。
3 4
PWGP
WGPW
GWPG
P-GP
WGP|
G-PG
注意不能按照'WGP'的顺序串团子。
3 4
PWWP
WWWW
PGGP
PWWP
W\/W
PGGP
评分标准
对于每个测试点,我们给出四个参数$S,X,Y,Z$。参数如下:
测试点编号 | $S$ | $X$ | $Y$ | $Z$ |
---|---|---|---|---|
$1$ | $15$ | 44000 | 47000 | 47220 |
$2$ | $15$ | 39000 | 41700 | 41980 |
$3$ | $15$ | 45000 | 51000 | 51390 |
$4$ | $15$ | 18000 | 19000 | 19120 |
$5$ | $20$ | 43000 | 48200 | 48620 |
$6$ | $20$ | 44000 | 46000 | 46500 |
对于每个测试点:
- 若你的输出不合法,你的得分为0。否则设你的方案中漂亮的团子串个数为$N$。
- 若 $N < X$,你的得分为 0。
- 若 $X \le N < Y$,你的得分为 $\frac{N-X}{2(Y-X)} \times S$。
- 若 $Y \le N < Z$,你的得分为 $(\frac{1}{2}+\frac{N-Y}{2(Z-Y)}) \times S$。
- 若 $Z \le N$,你的得分为 $S$。
数据范围
对于所有数据,满足$3 \le R,C \le 500$。