280K 63MS GCC 600B 2009-01-10 23:08:06

哭死了,这道题目竟然错了十几次之多。

是一道很简单的题目:最长下降子序列问题。。。。。

刚开始错在数组开的太小,导致runtime error,

其次,误以为最后一个元素里存放的就是最大值,根本就没经过大脑嘛。。。

接下来,发现自己忘了元素还有是1个的情况。。。。

最后,更可恶的是,我把上面的代码改了,加了max,输出结果的时候还是用了原来那个。。。。。。。。。。

我真郁闷的类,wrong了这么多次,唉。。。。。。。。。。。。。。。就给自己买个教训吧。好大的代价啊。。

不说了,核心代码是:

 for(i=2;i<n;i++){
  best[i] = 1;
  for(j=1;j<i;j++){
   if(a[j]>=a[i]&&best[j]+1>best[i])
    best[i]=best[j]+1;
  }
  if(best[i]>max)
    max=best[i];
 }

代码如下:

 

Code

 

pku2533:

 

Code
posted on 2009-01-10 23:15  pandy  阅读(663)  评论(0编辑  收藏  举报