摘要: 堆。 一道模拟,不过不同的人模拟出来的效果差距很大,比方说我抄的这个就太劲了。。 #include #include #include #include using namespace std; struct data { int n,s,t,p; data() {} data(int n,int s,int t,int p):n(n),s(s),t(t),p(p... 阅读全文
posted @ 2016-05-27 23:12 invoid 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 题目大意: 在n个点中,选出k对相邻的互不相同的点,使k段距离的总和最小。 贪心,双向链表。 首先,点之间的距离是动态的,所以要用堆来维护。 每次都选择最近的点。但因为其他情况,可能最终不会选择这对点连在一起 所以把俩个点旁边的路径的和减去俩个点之间距离再加进去,表示连旁边的俩条边,不连现在的边。 要维护许多信息。 #include #include #include us... 阅读全文
posted @ 2016-05-27 20:39 invoid 阅读(554) 评论(0) 推荐(0) 编辑