[XJTUPC2024] 榕树之心
题目背景
你说的对,但是《榕树之心》是一款由 Corycle, HCCH, MCPlayer542, Veritas, wh 在游戏设计与开发课上研发的策略性多人对战游戏,游戏发生在一个热带雨林,在这里,你将扮演一棵榕树的「核心」,与其他榕树竞争养分和生存空间……
题目描述
游戏地图由若干正六边形构成,玩家可以控制榕树核心从一个六边形的**中心**移动的另一个相邻六边形的**中心**从而加固树枝、清理害虫、长出新枝条或者摧毁其他榕树。
![](https://cdn.luogu.com.cn/upload/image_hosting/g6dpzmiq.png)
平面的正六边形网格可以看做若干立方体堆叠出的立体图形的正等轴测图(如图),每个立方体的投影都是一个正六边形,于是立方体的空间坐标可以用来表示正六边形坐标。我们规定某一立方体中心位于原点,所有正方体中心坐标 $(x,y,z)$ 都满足 $x+y+z=0$,所以可以省略一维,用 $(x,y)$ 来描述其对应正六边形的中心。这种坐标系统叫做**纵向坐标**。
![](https://cdn.luogu.com.cn/upload/image_hosting/4s74ssjt.png)
游戏使用**纵向坐标**描绘六边形的位置,为了让玩家直观地看到核心的位置,Veritas 需要将其转化为**平面直角坐标**以便在屏幕上显示,**请你帮助他将纵向坐标转换成平面直角坐标**。
纵向坐标 $(x,y)$ 到平面直角坐标 $(x^\prime,y^\prime)$ 的转换公式为:
$$x^{\prime} = \frac{1}{2} x + \frac{1}{2} y$$
$$y^{\prime} = \frac{\sqrt{3}}{2} x - \frac{\sqrt{3}}{2} y $$
输入输出格式
输入格式
仅一行,有两个用空格隔开的整数 $x,y$,表示纵向坐标 $(x,y)$ ($-10^6\le x\le 10^6,-10^6\le y\le 10^6$)。
输出格式
一行两个实数 $x^{\prime}$ 和 $y^{\prime}$,用空格隔开,表示转换得到的平面直角坐标 $(x^\prime,y^\prime)$。
当你输出的两个实数与答案的相对误差或者绝对误差的较小者不超过 $10^{-6}$ 时视为正确。
输入输出样例
输入样例 #1
114 514
输出样例 #1
314.000000 -346.410162
输入样例 #2
0 0
输出样例 #2
0.000000 0.000000
输入样例 #3
1000000 -1000000
输出样例 #3
0.000000 1732050.807569
输入样例 #4
3 5
输出样例 #4
4.000000 -1.732051
输入样例 #5
-19 23
输出样例 #5
2.000000 -36.373067
说明
《榕树之心》游戏链接(线下参赛队伍赛时无法访问该链接):[core-of-banyan.github.io](https://core-of-banyan.github.io/)。
欢迎大家(在赛后)游玩。