今天遇到一个问题,在写主题板块,共有21个主题类别方块,可以存放主题,但是主题数是<=21的,所以想尽量不让空闲的板块连续,这样看起来以至于板块不那么空闲。

于是想先从奇数中挑选位置,然后再从偶数位置挑选,这样能使空闲板块尽量不连续。

例如:如果有5个板块,3个主题,那么在1,3,5的位置放入主题。

主题存放问题

一个小Demo如下:

   1:  #include <stdio.h>
   2:   
   3:  int arrary[21] = {0,0,0};
   4:   
   5:  int ChooseAnEmpty()
   6:  {
   7:      int j = 0;
   8:   
   9:      for(j=1;j<=21;j+=2)
  10:      {
  11:          if(arrary[j] == 0)
  12:          {
  13:              return j;
  14:          }
  15:      }
  16:   
  17:      printf("------\n");
  18:   
  19:      for(j=2;j<=21;j+=2)
  20:      {
  21:          if(arrary[j] == 0)
  22:          {
  23:              return j;
  24:          }
  25:      }
  26:      
  27:      printf("is full\n");
  28:      return -1;
  29:  }
  30:  int main()
  31:  {
  32:      int i,pos;
  33:   
  34:      for(i = 0; i<23; i++)
  35:      {
  36:          pos = ChooseAnEmpty();
  37:          if(pos == -1)
  38:          {
  39:              break;
  40:          }    
  41:          printf("empty pos = %d\n",pos);
  42:          arrary[pos] = 1;
  43:      }
  44:  }

主题存放问题

Wangkeke 2012-02-22 22:46 发表评论

相关文章:

  • 2021-10-30
  • 2021-10-06
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-05
  • 2021-09-26
  • 2022-12-23
猜你喜欢
  • 2021-12-03
  • 2021-08-10
  • 2022-02-14
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案