- 博客(5)
- 资源 (1)
- 收藏
- 关注
原创 poj 3258 还是二分
这个题的主要问题是计算m的方法不够直接,当==m时的处理不再单调,贴一个错误的程序: #include #include #include #include #include using namespace std; int l,n,m; vector rock; int dis[50005]={0}; int main(){ int i,j; int maxn,minn,ll,rr,
2012-04-08 13:35:52 1525
原创 poj 3273 二分法
老实说这道题开始并没有往2分这个方向想,后来看了网上大牛的攻略之后自己敲的各种弱,先总结一下二分吧。 二分最流行的进入下一轮的方法是l=mid+1; r=mid-1; 当然可以和l=mid 和 r=mid 配合,但是需要有一定前提(见后面代码)。纯使用l=mid 和 r=mid会导致死循环,原因就不多讲了。先贴一个特别2的程序: #include #inclu
2012-04-07 19:02:31 589
原创 poj 1985 重点学习图的存储方法
这么存图,对于u-->v,边是和v绑定的,next指向下一条边,adj[u]指向和u相连的众多边的一个边的一个点,存图的代码如下: void add(int u,int v,int w){//u-->v edges[e].v=v; edges[e].w=w; edges[e].next=adj[u]; //边的下标 adj[u]=
2012-04-05 16:40:20 645
原创 POJ 1088 DFS 同时记录深搜过的位置
听说是经典题目了,重点练一下递归如何调试,重点理解自顶向下和自底向上,重点练习递归如何避免重复计算。 另外关于DP函数的理解经常是记录从**开始之后的结果,或者走到**步时的结果,具体先上代码。 #include #include #include #include #include #include #include #include using namespace std; int R,C
2012-04-05 15:47:55 651
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人