$("head").append('')

08 2020 档案

摘要:题目链接 #include <bits/stdc++.h> using namespace std; int n,m,q; struct edge{ int u; int v; int num; }e[500005]; bool cmp(edge x,edge y){ return x.num>y. 阅读全文
posted @ 2020-08-23 19:24 returnG 阅读(112) 评论(0) 推荐(0)
摘要:原题解地址 ​ 在路径中,无非就以下情况: ​ 红线没有在端点上,绿线在端点上,显然绿线更优 ​ 或者直接穿过中间: ​ 所以最优的路径的线段两端一定在节点上的. 阅读全文
posted @ 2020-08-07 20:05 returnG 阅读(90) 评论(0) 推荐(0)
摘要:题目链接 写在前面: ​ 显而易见的线段树开根号模板,网上的题解比比皆是,但大多数的思路是$\sqrt{0}=0,\sqrt{1}=1$,除此之外的都是一个一个开根号,而一个元素最多开6次,所以时间最多可以卡到其它线段树的6倍,而我用的开根号则会尝试不去一个一个地去开根号. 思路: ​ 维护每个线段 阅读全文
posted @ 2020-08-07 11:15 returnG 阅读(108) 评论(0) 推荐(0)
摘要:题目链接 思路: ​ 看到此题,第一个想到的是贪心:要从(0.0,5.0)走到(10.0,5.0),就要绕过一些墙,那就会经过一些墙的端点(下文称之为节点),单从样例看来,就会说走到离当前节点距离最小的点就行了,但真的是这样吗? ​ 显然不是,原因有二: 如果起点到终点没有障碍,那么走其它节点是不是 阅读全文
posted @ 2020-08-05 14:43 returnG 阅读(138) 评论(0) 推荐(0)