BZOJ总览
1040: [ZJOI2008]骑士 树上加了一条边 断边再树形DP 断边调了好久 要了解题目性质
1045: [HAOI2008] 糖果传递 中位数水题 内含数学方程 变量搞一搞
bzoj1053:有点忘记了,有空补题解。。。。。。感觉得反思了,明明是一道做了两遍的题,为了复习欧拉函数敲了一遍,然而各种思路都忘记了。。。从最小的质数枚举起,大的质数越少越好。。。。。。
1061: [Noi2008]志愿者招募 内含费用流模板
#include<cstdio> #include<algorithm> #include<cstring> #define value pri #define N 200000 #define inf 200000000 using namespace std; int S,T,edgenum,ans,n,m,u,v,w,c; int next[N],head[N],vet[N],pri[N],cost[N],q[N],inq[N],dis[N],a[N]; void add(int u,int v,int w,int c) { edgenum++;vet[edgenum]=v;next[edgenum]=head[u];head[u]=edgenum;pri[edgenum]=w;cost[edgenum]=c; edgenum++;vet[edgenum]=u;next[edgenum]=head[v];head[v]=edgenum;pri[edgenum]=;cost[edgenum]=-c; } using namespace std; bool spfa() { ,tail=;q[]=T; ;i<=T;i++)dis[i]=inf; ;i<=T;i++)inq[i]=; dis[T]=;inq[T]=; while(tou<=tail) { ],e=head[u],ee; inq[u]=; ) { ==)ee=e+;; if(dis[u]-cost[e]<dis[v]) ) { dis[v]=dis[u]-cost[e]; ) { tail++; q[tail%]=v;inq[v]=; } } e=next[e]; } tou++; } return (dis[S]!=inf); } int dfs(int u,int aug) { inq[u]=; if(u==T)return aug; ,w; ) { ==)ee=e+;; ) ) if(dis[v]==dis[u]-cost[e]) { w=dfs(v,min(aug-used,value[e])); ans+=w*cost[e]; used+=w;value[e]-=w;value[ee]+=w; if(used==aug)return aug; } e=next[e]; } return used; } void dinic() { ans=;int tmp; while(spfa()) { inq[T]=; ) { memset(inq,,sizeof(inq)); tmp+=dfs(S,inf); } } } int main() { //freopen("1061.in","r",stdin); scanf("%d%d",&n,&m); ;i<=n;i++)scanf("%d",&a[i]); ;i<=m;i++) { scanf("%d%d%d",&u,&v,&w); add(u,v+,inf,w); } S=;T=n+; ;i<=n+;i++) { c=a[i]-a[i-]; )add(S,i,c,);); )add(i,i-,inf,); } dinic(); printf("%d",ans); }
1061
1303: [CQOI2009]中位数图 想法题 乱搞
1497: [NOI2006]最大获利 内含最大流dinic模板
#include<cstdio> #include<algorithm> #include<cstring> #define N 1000000 #define inf 200000000 using namespace std; int edgenum,ans,mon,u,v,w,n,m,S,T,tot; int head[N],vet[N],pri[N],next[N],h[N],q[N],p[N]; void add(int u,int v,int w) { //printf("%d %d %d\n",u,v,w); edgenum++;vet[edgenum]=v;next[edgenum]=head[u];head[u]=edgenum;pri[edgenum]=w; edgenum++;vet[edgenum]=u;next[edgenum]=head[v];head[v]=edgenum;pri[edgenum]=; } int dfs(int u,int aug) { if(u==T)return aug; ,w,e=head[u],ee; ) { int v=vet[e]; ) ) { ==)ee=e+;; w=dfs(v,min(aug-used,pri[e])); used+=w;pri[e]-=w;pri[ee]+=w; if(used==aug)return used; } e=next[e]; } )h[u]=-;return used; } bool bfs() { ;i<=T;i++)h[i]=-; ,tail=;q[]=S;h[S]=; while(tou<=tail) { ],e=head[u]; ) { int v=vet[e]; )) { h[v]=h[u]+;tail++;q[tail%]=v; } e=next[e]; } tou++; } ); } void dinic() { ans=; while(bfs()) { ans+=dfs(S,inf); } } int main() { //freopen("1497.in","r",stdin); scanf("%d%d",&n,&m); S=;T=n+m+; ;i<=n;i++)scanf("%d",&p[i]),add(S,i,p[i]); tot=n; ;i<=n+m;i++) { scanf("%d%d%d",&u,&v,&w); add(u,i,inf);add(v,i,inf);add(i,T,w); mon+=w; } dinic(); printf("%d",mon-ans); }
1497
1588: [HNOI2002]营业额统计 写的超弱的一种splay 好几年前的版本吧。。被坑了
1861: [Zjoi2006]Book 书架 抄黄学长的写法 高级splay 还没有深入理解过>_<
2152: 聪聪可可 第一道点分治 不理解 有空再刷别的
2588: Spoj 10628. Count on a tree 第一次写主席树 权值线段树 struct LCA
4034: [HAOI2015]T2 树链剖分 改了挺久 pushdown出现了错误 下次写线段树要更仔细一点 还要longlong
4552:内含线段树,push_down,懒人标记等。。。。
BZOJ总览的更多相关文章
- BZOJ.4034 [HAOI2015]树上操作 ( 点权树链剖分 线段树 )
BZOJ.4034 [HAOI2015]树上操作 ( 点权树链剖分 线段树 ) 题意分析 有一棵点数为 N 的树,以点 1 为根,且树点有边权.然后有 M 个 操作,分为三种: 操作 1 :把某个节点 ...
- BZOJ.1036 [ZJOI2008]树的统计Count ( 点权树链剖分 线段树维护和与最值)
BZOJ.1036 [ZJOI2008]树的统计Count (树链剖分 线段树维护和与最值) 题意分析 (题目图片来自于 这里) 第一道树链剖分的题目,谈一下自己的理解. 树链剖分能解决的问题是,题目 ...
- BZOJ 2127: happiness [最小割]
2127: happiness Time Limit: 51 Sec Memory Limit: 259 MBSubmit: 1815 Solved: 878[Submit][Status][Di ...
- 步步深入:MySQL架构总览->查询执行流程->SQL解析顺序
前言: 一直是想知道一条SQL语句是怎么被执行的,它执行的顺序是怎样的,然后查看总结各方资料,就有了下面这一篇博文了. 本文将从MySQL总体架构--->查询执行流程--->语句执行顺序来 ...
- BZOJ 3275: Number
3275: Number Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 874 Solved: 371[Submit][Status][Discus ...
- BZOJ 2879: [Noi2012]美食节
2879: [Noi2012]美食节 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 1834 Solved: 969[Submit][Status] ...
- bzoj 4610 Ceiling Functi
bzoj 4610 Ceiling Functi Description bzoj上的描述有问题 给出\(n\)个长度为\(k\)的数列,将每个数列构成一个二叉搜索树,问有多少颗形态不同的树. Inp ...
- BZOJ 题目整理
bzoj 500题纪念 总结一发题目吧,挑几道题整理一下,(方便拖板子) 1039:每条线段与前一条线段之间的长度的比例和夹角不会因平移.旋转.放缩而改变,所以将每条轨迹改为比例和夹角的序列,复制一份 ...
- 【sdoi2013】森林 BZOJ 3123
Input 第一行包含一个正整数testcase,表示当前测试数据的测试点编号.保证1≤testcase≤20. 第二行包含三个整数N,M,T,分别表示节点数.初始边数.操作数.第三行包含N个非负整数 ...
随机推荐
- selinux
root@lujie ~]# vim /etc/sysconfig/selinux # This file controls the state of SELinux on the system. # ...
- IOS- 应用程序生命周期(前后台切换,应用的各种状态)详解
iOS的应用程序的生命周期,还有程序是运行在前台还是后台,应用程序各个状态的变换,这些对于开发者来说都是很重要的. iOS系统的资源是有限的,应用程序在前台和在后台的状态是不一样的.在后台时,程序会受 ...
- struts2响应AJAX
1发送ajax请求使用stream进行响应 Result的type属性的stream取值. 1.1定义Action public class UserAction { private String u ...
- 设计模式之构建者模式(Builder):初步理解
构建者(Builder)设计模式(又叫生成器设计模式): 当一个类的内部数据过于复杂的时候(通常是负责持有数据的类,比如Config.VO.PO.Entity...),要创建的话可能就需要了解这个类的 ...
- RxJava学习入门
RxJava是什么 一个词:异步. RxJava 在 GitHub 主页上的自我介绍是 "a library for composing asynchronous and event-bas ...
- 有关struts2中用到 js 总结
1.js中取Struts2中的栈里的值 var current = "${currentPage}"; 2.js 如何提交执行提交url连接 ,以及 Struts中的url如何如何 ...
- MongoDB增删查改
1.insert db.Customers.insert({ "DateTest":new Date(), "IntTest":32, "Double ...
- ASP.NET Web API 中的异常处理(转载)
转载地址:ASP.NET Web API 中的异常处理
- Python 打开目录与指定文件
Python打开外部文件有很多方法, os.popen打开外部程序,但发现只能打开文件所在目录的文件 os.system可打开外部文件os.system(command) command 要执行的命令 ...
- 【mysql启动Innodb的方法】
点击此处进入原网页 1.存储引擎是什么? Mysql中的数据用各种不同的技术存储在文件(或者内存)中.这些技术中的每一种技术都使用不同的存储机制.索引技巧.锁定水平并且最终提供广泛的不同的功能和能力. ...