终于写到今天了...
第一题:纯水题,送分.模拟即可
第二题:最短路径. 大概题意是给出两个点的编号和n个点的坐标.要求每个点经过一次,0点允许经过两次.其中有三个限制条件:
1.从A走到B时,只能由横坐标小的点走到大的点.
2.由B回到A时,只能由横坐标大的点走到小的点.
3.有两个特殊点b1和b2,b1在0到n-1的路上,b2在n-1到0的路上.
可以运用动规的思想,定义dp[i][j].表示了第一条线路最前端为i , 第二条线路最前端为j 的最小路径长度.
每次更新时,取出 k = max( i , j ) + 1.而后更新下一次状态
dp[i][k] = min ( dp[i][k] , dp[i][j] + dis( j , k ) )
dp[k][j] = min ( dp[i][k] , dp[i][j] + dis( i , k ) )
时间: 2024-10-23 23:56:29