站外题求助
  • 板块题目总版
  • 楼主McIron233
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/4/17 19:20
  • 上次更新2024/4/17 21:15:43
查看原帖
站外题求助
381463
McIron233楼主2024/4/17 19:20

由于一些原因,该题只出现在了纸质试卷上。

在一个平面直角坐标系中,给定 n(1≤n≤105)n(1 \leq n \leq 10^5) 个点距离原点的欧几里得距离 ei(1≤ei≤109)e_i(1 \leq e_i \leq 10^9),这里保证 eie_i 单调不下降,且都为整数。

试确定每个点的坐标(坐标可以不是正整数),得到每个点的曼哈顿距离序列 did_i,使得这个序列的逆序对数最多,输出逆序对数的最大值。

例如,有 33 个点,欧几里得距离序列 eie_i 分别是 5,5,65,5,6,那么当这三个点的坐标分别是 (3,4),(522,522),(0,−6)(3,4),(\frac{5}{2}\sqrt{2},\frac{5}{2}\sqrt{2}),(0,-6) 时,得到曼哈顿距离序列 di={7,52,6}d_i=\{7,5\sqrt{2},6\},逆序对共有 22 个。

在我的思路中,由于对称性,逆序对数最多时一定存在一种方案,每个点横纵坐标都是非负整数。那么利用三角函数,可以得到曼哈顿距离序列 di={2eisin⁡(θ+π4)}d_i=\{\sqrt{2} e_i \sin (\theta + \frac{\pi}{4})\},其中 sin⁡(θ+π4)∈[22,1]\sin (\theta + \frac{\pi}{4}) \in [\frac{\sqrt{2}}{2},1]。

做到这一步就不会做了,还请高人指点。

2024/4/17 19:20
加载中...