摘要: 网上题解一搜一大把我就不献丑了,直接放代码吧 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 #define N 100008 7 #define M 1008 8 9 long long S,F[N],n,C[5],T,A[M][5];10 11 void init()12 {13 for (int i = 1;i = 0)40 {41 ans -= F[S - (A[i][j]+1)*C[j]];42 for (int... 阅读全文
posted @ 2014-02-01 17:05 乌拉拉979 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 这个题可以先floyd求出最短路在将包含原图中所有S->T最短路径的子图抽出来求最小割(就是最大流啦)f[S][i]+f[i][j]+f[j][T] == f[S][T]代表i->j边在要求的这个子图中 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 #define N 508 7 #define M 124758 8 #define INF 0x7ffffff 9 10 int n,m,tot1,tot2,head1[N],head2[N],f[N][N],lay[N],qu... 阅读全文
posted @ 2014-02-01 17:02 乌拉拉979 阅读(597) 评论(0) 推荐(0) 编辑
摘要: 用一个结构体来存储每一页的标号,访问次数和进入内存时间然后用堆来弄这些东西。在堆外开一个at数组判是否在内存里面,开一个delta数组用作懒标记存储访问次数的变更然后在一个外存里的东西要入内存时进行判断和懒标记的加入。。记得要离散化!! 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 #define N 1000008 8 9 struct page10 {11 int num,v,t;12 bool operator b.t); return (v >... 阅读全文
posted @ 2014-02-01 16:56 乌拉拉979 阅读(420) 评论(0) 推荐(0) 编辑