做个中英文网站多少钱,wordpress菜单突然拉不出,做网站公司分为国内还是国外,厅网站建设项目背景递增
luogu 3902
题目大意#xff1a;
给出一个序列#xff0c;问最少修改多少个数字可以使他单调递增
输入样例
3
1 3 2输出样例
1 数据范围
对于50% 的数据#xff0c;N≤103N \le 10^3N≤103 对于100% 的数据#xff0c;1≤N≤105,1≤Ai≤1091 \le N \le 10^5 , …递增
luogu 3902
题目大意
给出一个序列问最少修改多少个数字可以使他单调递增
输入样例
3
1 3 2输出样例
1 数据范围
对于50% 的数据N≤103N \le 10^3N≤103 对于100% 的数据1≤N≤105,1≤Ai≤1091 \le N \le 10^5 , 1 \le A_i \le 10^91≤N≤105,1≤Ai≤109
解题思路
就是求最长上升子序列但因为数据太大所以要用onlognon\ log\ non log n的方法具体实现见代码
代码
#includecstdio
using namespace std;
int n,x,num,l,r,mid,a[100100];
int main()
{scanf(%d,n);scanf(%d,a[num]);for (int i2;in;i){scanf(%d,x);if (xa[num]) a[num]x;//比最大的大就直接加else{l1;rnum;while(lr)//找不大于x的数中最大的{mid(lr)1;//二分if (a[mid]x) lmid1;else rmid;}a[l]x;//替换}}printf(%d,n-num);
}