[C] 求一组数列的最长的不下降序列。 →→→→→进入此内容的聊天室

来自 , 2020-07-23, 写在 C, 查看 105 次.
URL http://www.code666.cn/view/2aaaddf2
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. #define MAXNUM 100//最大数字个数
  5.  
  6. int b[MAXNUM][2];
  7. int n;
  8. int len;
  9.  
  10. int main()
  11. {
  12.     int i,j;
  13.     printf("输入数列中数字的个数n(1-100):\n");
  14.     scanf("%d",&n);
  15.     printf("输入数字:\n");
  16.     for(i=1; i<=n; i++)
  17.     {
  18.         scanf("%d",&b[i][0]);
  19.         b[i][1]=1;
  20.     }
  21.     for(i=2; i<=n; i++)
  22.     {
  23.         len = 0;
  24.         for(j=1; j<i; j++)
  25.             if((b[i][0]>=b[j][0])&&(b[j][1]>len))
  26.                 len=b[j][1];
  27.         if(len>0)
  28.             b[i][1]=len+1;
  29.     }
  30.     len = 1;
  31.     for(j=2; j<=n; j++)
  32.         if(b[j][1]>len)
  33.             len = b[j][1];
  34.     printf("最长为:%d\n",len);
  35.     return 0;
  36. }
  37.  

回复 "求一组数列的最长的不下降序列。"

这儿你可以回复上面这条便签

captcha