编程介的小学生 2019-04-24 00:11 采纳率: 20.5%
浏览 138

迷宫的遍历的算法在数据结构方面的一个运用,怎么采用C程序的语言的技术设计的代码实现?

Problem Description
Alice would like to visit Bob. However, they live in a hilly landscape, and Alice doesn’t like to walk in hills. She has a map of the area, showing the height curves. You have to calculate the total altitude climbed, and the total altitude descended, for the route which minimizes these numbers. It does not matter how far she has to walk to achieve this.

Since you don’t know what the landscape looks like in between the height curves, you cannot know exactly how much climb and descent she will actually get in practice, but you should calculate the minimum possible under optimal conditions based on what you can deduce from the map.

The map is represented as an xy grid. Alice lives in (0, 0), and Bob lives in (100 000, 0). The height curves are represented as polygons, where a polygon cannot intersect itself or another polygon. Furthermore, neither Alice nor Bob lives exactly on a height curve.

Second test case from sample input (compressed).

Input
On the first line one positive number: the number of testcases, at most 100. After that per testcase:

One line with 0 ≤ N ≤ 2 500, the number of height curves.

One line for each height curve, with 1 ≤ Hi ≤ 1 000 being the height of the curve, 3 ≤ Pi ≤ 2 000 the number of vertices in the polygon, and the vertices x1, y1, …, xPi, yPi having integral values −300 000 ≤ xi, yi ≤ 300 000.

There will be no more than 200 000 polygon vertices in total in all test cases.

Output
Per testcase:

One line with two numbers: the total altitude climbed and the total altitude descended.

Sample Input
2
2
20 3 10 10 0 -10 -10 10
25 3 20 20 0 -20 -20 20
3
100 4 -1 1 1 1 1 -1 -1 -1
300 8 -2 2 2 2 2 -2 5 -2 5 1 6 1 6 -3 -2 -3
50 8 3 3 100001 3 100001 -1 7 -1 7 2 4 2 4 -1 3 -1

Sample Output
5 0
200 250
Source

  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥15 请教一下各位,为什么我这个没有实现模拟点击
    • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
    • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
    • ¥20 有关区间dp的问题求解
    • ¥15 多电路系统共用电源的串扰问题
    • ¥15 slam rangenet++配置
    • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
    • ¥15 ubuntu子系统密码忘记
    • ¥15 保护模式-系统加载-段寄存器
    • ¥15 电脑桌面设定一个区域禁止鼠标操作