摘要: T^T做这题就是各种泪~卡了将近2小时,各种Judging error、越界与WA。题解:整个数组是非降序的,所有相等元素都会聚集在一起。开一个num数组,用num[i]来记录第i段相等的元素有多少个(也就是说相当于RMQ中的元素值了),num数组的长度就是原数列不同元素的个数(段数),l数组记录i段元素的上界,r数组记录i段元素的下界,用一个mark数组记录i位置的元素属于第几段。假设询问区间为a,b:L=mark[a],R=mark[b];ans=max(r[L]-a+1,b-l[R]+1,夹在这两个段中最大值)图解:#include<iostream>#include< 阅读全文
posted @ 2013-05-31 18:59 小仪在努力~ 阅读(919) 评论(0) 推荐(0) 编辑