关于分划那点破事

数组下标首尾差为首尾长度减一,这是显然的。

但是到了稍微复杂的情况,脑子一没转过弯就会漏个减一或者多个减一,还有可能出现缺头漏尾的情况

昨天一个简单dp就因为分划的位置没搞清楚debug的快吐血,今天痛下决心发个博客规定住以后这种涉及数组分划的标准


关于分划那点破事

对于一个a[n],其下标为0~n-1,以par表示划分时记录位置的变量

令par=k表示:1.划分点左侧第一个元素为k-1

                           2.划分点右侧第一个元素为k

                           3..划分点左侧有k个元素

                           4..划分点右侧有n-k个元素

       故此时对a从头到尾扫描一遍的话par的取值就为par=0;par<=n

      二分的结构就是这样par(s,e)

                                         {if(s!=e)

                                                  {par(s,(e-s)/2);

                                                   par((e-s)/2-1,e);}}