好诡异的一个题啊

紫书上关于从左边找还是从两边往中间找的讨论没有看懂,怎么一下就找到唯一的元素了(⊙_⊙?)

方法就是用的书上讲的方法,类似于uva 11572,不过这个题需要预处理存下两边的最近的相同数的位置

for (int i=1;i<=n;i++) {
            prev[i]=r[a[i]];
            next[prev[i]]=i;
            r[a[i]]=i;}//记录元素a[i]上次出现的位置,因为是从左向右遍历,所以上次出现的位置正好是prev[i]要求的 
        //prev[i],与 i位置的元素  相同的左边最近的元素的位置
        //next[i] 同理 
View Code

相关文章:

  • 2022-12-23
  • 2022-03-01
  • 2021-12-10
  • 2021-07-26
  • 2022-12-23
  • 2021-09-17
  • 2021-07-21
  • 2021-09-05
猜你喜欢
  • 2021-12-09
  • 2022-12-23
  • 2021-12-08
  • 2021-06-07
  • 2021-12-16
  • 2021-08-01
  • 2021-10-04
相关资源
相似解决方案