摘要: #include<bits/stdc++.h> using namespace std; const int maxn=5e5+100; int n,m,s; int father[20][maxn]; vector<int> g[maxn]; int h[maxn]; void dfs (int 阅读全文
posted @ 2020-08-06 19:42 zlc0405 阅读(97) 评论(0) 推荐(0) 编辑
摘要: #include<bits/stdc++.h> using namespace std; const int maxn=5e5+100; typedef long long ll; struct node { int l,r; ll sum; ll lazy; }segTree[maxn*4]; l 阅读全文
posted @ 2020-08-06 19:41 zlc0405 阅读(99) 评论(0) 推荐(0) 编辑
摘要: #include<bits/stdc++.h> using namespace std; const int maxn=1e5+100; struct node { int u,v,nxt; }edge[maxn*10],edge2[maxn*10]; int head[maxn],head2[ma 阅读全文
posted @ 2020-08-06 19:39 zlc0405 阅读(99) 评论(0) 推荐(0) 编辑
摘要: #include<bits/stdc++.h> using namespace std; const int maxn=200; typedef long long ll; const ll mod=998244353; ll pow_m (ll a,ll b,ll mod) { ll res=1; 阅读全文
posted @ 2020-08-06 18:56 zlc0405 阅读(83) 评论(0) 推荐(0) 编辑
摘要: 题意: 给出一个无向连通图,里面的点分为0号点和1号点,第i条边的边权是2的i次。 询问所有1号点到0号点的最短路径之和。 题解: 如果对所有1号点跑dijkstra算法,时间肯定是无法接受的。 观察到题目的边权有一个关键的性质,第i条边权是2的i次,这说明前i-1条边加起来都没这条边的边权大。 猜 阅读全文
posted @ 2020-08-06 18:49 zlc0405 阅读(264) 评论(0) 推荐(0) 编辑