激光塔(laser)
题目描述
二维平面上有 $N$ 个激光塔,每个塔的位置为 $(X_i,Y_i)$,初始时每个塔会向右射出激光。但有些塔被旋转了,每个塔有一个旋转指数 $O_i\in\{0,90,180,270\}$,表示它逆时针旋转了 $O_i$ 度,射出的激光也随之旋转。
$F$ 哥有权对这些塔的旋转角度做出调整。$F$ 哥把一个塔任意方向旋转 $90$ 都需要 $P$ 的代价,而这座塔本身有 $P$ 的收益。也就是说,如果一座塔不旋转贡献为 $P$,旋转 $90$ 贡献为 $0$,旋转 $180$ 贡献为 $-P$。
塔之间也会有一些化学反应。如果两个塔 $i,j$ 其欧式距离不超过 $R$,$X_i\neq X_j,Y_i\neq Y_j$,就会产生贡献。如果他们激光同向,就会产生 $G$ 的贡献,如果相向或背向就会产生 $-G$ 的贡献,否则不产生贡献。这里的同向指两条激光平行且方向相同,相向或背向指平行且方向相反,否则就是垂直。
由于 $F$ 哥需要筹钱买 $C$,他希望最大化贡献。然而他实在是菜,所以请你帮帮他吧!
输入格式
第一行输入四个整数 $N,R,G,P$。
接下来 $N$ 行每行三个整数 $X_i,Y_i,O_i$。
输出格式
一行一个整数表示答案。
样例 1 输入
3 10 10 15
0 0 0
2 2 180
100 100 180
样例 1 输出
35
将第 $2$ 个塔旋转 $180$,则三个塔都有 $15$ 的贡献,第二个塔旋转花去 $30$,$(1,2),(2,1)$ 都有 $10$ 的贡献,$3\times 15-30+2\times 10=35$。
样例 2 输入
10 1000 1 2
186 98 180
206 689 270
695 90 90
292 247 90
-405 -125 270
928 -887 90
-45 -233 270
58 625 90
-215 136 270
-858 672 90
样例 2 输出
62
本题没有大样例。
数据范围
对于第 $1\sim 3$ 个测试点,$N\leqslant 10$。
对于第 $4$ 个测试点,$O_i=0$。
对于第 $5\sim 7$ 个测试点,$O_i\in\{0,180\}$。
对于所有数据,$1\leqslant N\leqslant 50,1\leqslant R,P,G\leqslant 1000,-1000\leqslant X_i,Y_i\leqslant 1000$。