HZNU-ACM寒假集训Day4小结 最短路】的更多相关文章

最短路 1.Floy 复杂度O(N3)  适用于任何图(不存在负环) 模板 --kuangbin #include<iostream> #include<cstdio> #include<algorithm> using namespace std; const int INF = 0x3f3f3f3f; ; int mp[maxn][maxn]; int n, m; int main() { scanf("%d%d", &n, &m…
先写一部分,持续到更新完. A: 寒衣调 Description 男从戎,女守家.一夜,狼烟四起,男战死沙场.从此一道黄泉,两地离别.最后,女终于在等待中老去逝去.逝去的最后是换尽一生等到的相逢和团圆. 某日两人至奈何桥前,服下孟婆汤. 每滴孟婆汤都有强度不一的药效,设一碗孟婆汤共N滴(0<N<100000),其中第i滴(0≤i<N)用b[i]表示. 孟婆汤的药效与原料有关,设熬制前同样有N滴原料,第i滴原料用a[i]表示,0≤a[i]<2^32. 药效b[i]的计算方法为b[i]…
A: 漫无止境的八月 Description 又双叒叕开始漫无止境的八月了,阿虚突然问起长门在这些循环中团长哪几次扎起了马尾,他有多少次抓住了蝉等等问题,长门一共回复n个自然数,每个数均不超过1500000000(1.5*10^9).已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果. Input 第1行是整数n,表示回复的自然数的个数.n<=1e6第2~n+1行每行一个自然数. Output 包含m行(m为n个自然数中不相同数的个数)…
最小生成树(无向图) Kruskal 给所有边按从小到大排序 形成环则不选择(利用并查集) P1546 最短网络   https://www.luogu.com.cn/problem/P1546 #include<iostream> #include<cstdio> #include<string> #include<algorithm> typedef long long ll; using namespace std; struct Node { int…
简单搜索 1.DFS UVA 548 树 1.可以用数组方式实现二叉树,在申请结点时仍用“动态化静态”的思想,写newnode函数 2.给定二叉树的中序遍历和后序遍历,可以构造出这棵二叉树,方法是根据后序遍历找到根,然后在中序遍历中找到树根,从而找出左右子树的结点列表然后递归 构造左右子树 3.注意这里输入的模板,用stringstream会方便 #include<iostream> #include<string> #include<cmath> #include&l…
常用STL 1.优先队列 priority_queue 内部是用堆(heap)实现的 priority_queue<int> pq; 默认为一个“越小的整数优先级越低的优先队列” 对于一些常见的优先队列,STL提供了更简单的定义方法 例如:“越小的整数优先级越大的优先队列”可以写成“priority_queue<int,vector<int>,greater<int> >pq" 自定义优先级 struct Node { int x, y; frie…
day4(day5补完的) 继续刷搜索方面的题, 初步了解了序列. T1 迷宫问题 题目描述设有一个 n*n 方格的迷宫,入口和出口分别在左上角和右上角.迷宫格子中分别放 0 和 1 ,0 表示可通,1 表示不能,入口和出口处肯定是 0.迷宫走的规则如下所示:即从某点开始,有八个方向可走,前进方格中数字为 0 时表示可通过,为 1 时表示不可通过,要另找路径.找出所有从入口(左上角)到出口(右上角)的路径(不能重复),输出路径总数,如果无法到达,则输出 0.输入格式共 n+1 行:第一行位正整数…
蛙人 (ple) 蛙人使用特殊设备潜水.设备中有一个气瓶,分两格:一格装氧气,另一格装氮气.留在水中有时间的限制,在深水中需要大量的氧气与氮气.为完成任务,蛙人必须安排好气瓶.每个气瓶可以用它的重量和含有气体的体积来描述.蛙人要完成任务,就需要特定数量的氧气与氮气.要完成任务,他所需带的气瓶的总重量最少是多少呢? 例如:蛙人有下述五个气瓶.每个气瓶表述为:氧气的体积,氮气的体积(以“升”为单位)和气瓶的重量(以“公钱(10g)”为单位): 3 36 120 10 25 129 5 50 250…
算不出的等式 BJOI2012 看到这题 真没什么办法 无奈看题解 1.注意到p/q 联想到斜率 2.注意到 [ ] 联想到整点 注意到k在变化,构造一次函数 f(x)=p/q*x ,g(x)=q/p*x 收到[] 的影响,y值即为f(x)下取整后的值,即垂线上整点的个数 又考虑到p==q时 需特判 于是有 #include<iostream> #include<cstdio> #include<string> #include<algorithm> #in…
符号说明 a|b      a整除b (a,b)    a与b的最大公因数 [a,b]     a与b的最小公倍数 pα||a    pα|a但pα+1∤a a≡b(mod m) a与b对模m同余 a-1 (mod m) a对模m的数论倒数 性质1  如果a|b,那么(-a)|b,反过来也成立 性质2  如果a|b,b|c,那么a|c 性质3  如果a|b,a|c,那么对任意整数x,y都有 a|(bx+cy) 性质4 设n为大于1的正整数,p是n的大于1的因数中最小的正整数,则p为素数 性质5…