摘要: qbxt7月笔记 二分 int l,r; while(l<=r){ int mid=(l+r)/2;//>>1 if(ok(mid))l=mid+1; else r=mid-1; } ans=l; lower_bound()和upper_bound() 二分查找 二分查找需要排序 右端点开区间(right需要+1) 阅读全文
posted @ 2021-07-17 19:54 DAIANZE 阅读(38) 评论(0) 推荐(0) 编辑
摘要: zhxのDP讲 zhxのDP讲 DP基础例题 1. 斐波那契数列 f[1]=1;//第0项和第1项 f[0]=0; //记忆化搜索 int dp(int n)//斐波那契数列第n项 { //g[i]表示f[i]有没有计算过 if(n<=1)return n; if(g[n])return f[n]; g[n]=tr 阅读全文
posted @ 2021-07-17 19:36 DAIANZE 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 最长上升子序列相关问题笔记 //求最长上升子序列长度 cin>>n; for(int i=1;i<=n;i++) cin>>a[i]; memset(f,0,sizeof(f)); for(int i=1;i<=n;i++) { for(int j=i+1;j<=n;j++) if(a[j]>a[i]) f[j]=max(f[ 阅读全文
posted @ 2021-07-17 19:16 DAIANZE 阅读(43) 评论(0) 推荐(0) 编辑