3581专题

poj 3581 Sequence(后缀数组)

思路:对于第一段序列,因为第一个数最大所以最小的序列等于反串之后的字典序最小子串。用后缀数组可求。 之后在剩下的子串中,想分割出两个子串使得反转之后字典序最小,可以这样考虑: 先把剩下的字符串进行反转复制两次,样例中去掉第一段序列后剩下的子串为{2, 3, 4},处理完为: {4, 3 , 2, 4 ,3, 2},可以发现{2, 4, 3}这个子串符合题目要求,而且{2}和{4. 3} 正好

poj 3581 后缀数组 详解

这个题折腾了快一个月,终于今晚又奋战了4个小时,AC掉了 题目:http://poj.org/problem?id=3581 首先看我写这个后缀数组教程,其实还不错http://blog.csdn.net/u011026968/article/details/20851295 关于第一个位置,反向读入,然后求后缀数组,找最小位置就好 第二个位置比较麻烦,参考这个博客的例子:http://b

poj 3581

题意:将一个数列分成连续的三段,每段必须有数字,问这三段反转后的数列的最小字典序的方案,并输出,注意:第一个数比后面所有都大 思路:因为第一个数最大,那么将整个数列反转后的字典序最小的后缀为第一段分开位置,但是要判断情况,如最后还要至少剩下两个数完成后两段,接下来找第二段的分开位置,不可以像刚刚那么找了,想这个例子,将第一段去掉后是这样的,1 3 2 1 100 如果和第一次一样的方法结果是1

英语——分享篇——每日200词——3401-3581

3401——colony——['kɒlənɪ]——n.殖民地,(某一类人的)聚居区——co+lon+y——co可乐(熟词coke)+lon笼(拼音)+y树杈(编码)——把可乐装在笼子里用树杈挑着去殖民地——The newly-occupied Italian colony of Libya rose in revolt in 1914.——意大利新占领的殖民地利比亚于1914年发生叛乱。 340