上一页 1 2 3 4 5 6 ··· 16 下一页
摘要:/* mi之间互质 同余方程组 : 设正整数m1.m2.mk两两互素,则方程组 x ≡ a1 (mod m1) x ≡ a2 (mod m2) x ≡ a3 (mod m3) . . x ≡ ak (mod mk) 有整数解, 解为 x ≡ (a1 * M1 * 1/M1 + a2 * M2 * 1 阅读全文
posted @ 2020-06-12 20:47 SummerMingQAQ 阅读(8) 评论(0) 推荐(0) 编辑
摘要:#include <iostream> #include <cstdio> #include <algorithm> #include <vector> using namespace std; #define ll long long const int INF = 1e9; //裴蜀定理:若 a 阅读全文
posted @ 2020-06-12 11:11 SummerMingQAQ 阅读(13) 评论(0) 推荐(0) 编辑
摘要:G Gaming with Mia 思路:我们能找出某些情况: -1 1 -1 -1 1 1 -1 -1 1 1 1 -1 -1 1 ... 1 -1 我们发现如果大于5个数相乘,则它一定可以分解成其他更优的情况相乘再相加。(当然如果出现0,也可以最极限情况5个数相乘) 时间复杂度就是:O(1e6* 阅读全文
posted @ 2020-06-10 20:02 SummerMingQAQ 阅读(29) 评论(0) 推荐(0) 编辑
摘要:1 #include <iostream> 2 #include <cstdio> 3 #include <algorithm> 4 #include <vector> 5 #include <queue> 6 using namespace std; 7 #define pb push_back 阅读全文
posted @ 2020-06-05 19:46 SummerMingQAQ 阅读(17) 评论(0) 推荐(0) 编辑
摘要:J. Factorial Products 思路:根据对数性质:log(a*b) = log(a) + log(b),使得阶乘相乘转变为前缀和累加,处理了数据过大无法存储的问题。 #include <iostream> #include <cstdio> #include <algorithm> # 阅读全文
posted @ 2020-06-04 22:57 SummerMingQAQ 阅读(22) 评论(0) 推荐(0) 编辑
摘要:边双联通分量:在一个无向图中,存在一个极大子图,删除任意一条边之后仍然是一个无向图。 桥:在无向图中,存在某条边,删除该边之后,该无向图将会被分割成两个无向图。 1 #include <iostream> 2 #include <vector> 3 #include <cstdio> 4 #incl 阅读全文
posted @ 2020-06-03 20:01 SummerMingQAQ 阅读(24) 评论(0) 推荐(0) 编辑
摘要:点双连通分量:在一个无向图中,存在一个极大子图,删除任意一个节点之后该图仍然是一个连通图。 割点:在一个无向图中,存在一个节点,删除这个节点之后,该无向图会被分为若干个连通图(个数大于一),则该点为割点。 #include <iostream> #include <vector> #include 阅读全文
posted @ 2020-06-02 18:02 SummerMingQAQ 阅读(23) 评论(0) 推荐(0) 编辑
摘要:强连通:在有向图中,如果Vx能到达Vy,且Vy也能到达Vx,说明它们两个点强连通。 强连通分量:在有向图中,存在一个极大子图,该子图中任意两点都是强连通。 #include <iostream> #include <vector> #include <cstdio> #include <cstrin 阅读全文
posted @ 2020-06-02 10:55 SummerMingQAQ 阅读(21) 评论(0) 推荐(0) 编辑
摘要:匈牙利算法 #include <iostream> #include <vector> #include <cstdio> #include <cstring> #include <queue> using namespace std; #define ll long long #define pb 阅读全文
posted @ 2020-05-29 22:21 SummerMingQAQ 阅读(16) 评论(0) 推荐(0) 编辑
摘要:ROADS 思路:K = 10000,dijkstra复杂度O(nlogn),如果我们把不同点的不同花费拆点,即d[花费][点] = 距离,则被拆为 N*K个点,分成K层,则dijkstra复杂度O(k * (n *logn + m)),复杂度在超时边缘徘徊... #include <iostrea 阅读全文
posted @ 2020-05-29 17:19 SummerMingQAQ 阅读(16) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 16 下一页