摘要:
dp.以上次染色时用的颜色的数量和每种数量所含有的颜色作状态。 #include #include #include using namespace std; const int mod = 1000000007; long long f[6][16][16][16][16][16]; int c[6]; int k; long long dfs(int x,int a,int b,... 阅读全文
摘要:
tatjan缩强连通分量,单源最长路。 #include #include #include using namespace std; const int maxn = 500000 + 10; const int maxm = 1000000 + 10; int G[maxn],V[maxm],Next[maxm],Eid; int g[maxn],v[maxm],next[maxm]... 阅读全文
摘要:
最小费用最大流。 拆点法建模。 #include #include #include using namespace std; const int maxn = 500 + 10; const int maxm = 100000 + 10; const int INF = 0x3f3f3f3f; int g[maxn],v[maxm],next[maxm],f[maxm],c[maxm... 阅读全文
摘要:
kruskal算法。 #include #include #include #include using namespace std; const int maxn = 1000 + 10; const int maxm = 2000000 + 10; struct Point { int x,y; } a[maxn]; struct Edge { int u,v,w;... 阅读全文
摘要:
网络流拆点建模。 注意二分查找的边界 #include #include #include using namespace std; const int maxn = 500 + 10; const int maxm = 40000 + 10; const int INF = 0x3f3f3f3f; int g[maxn],v[maxm],next[maxm],f[maxm],eid;... 阅读全文