百度空间 | 百度首页 
 
查看文章
 
noip 普及组 2005 count
2008-08-28 09:42

生成组合数的模板

//start

#include <stdio.h>
#include <string.h>
const int SIZE = 50;
char mask[SIZE];
char str[SIZE];
int s,t,w;
bool next (void)
{
for (int i=w-1;i>=0;i--)
      if (str[i]!=mask[i])
         {
          str[i]++;
          for (int j=i+1;j<w;j++)
              str[j]=str[j-1]+1;
          return true;
         }
return false;
};


int main()
{
    scanf ("%d %d %d",&s,&t,&w);
    scanf ("%s",str);
   // printf("\n%s\n",str);
  
   int i;
  
   int j=t;
   for (i=w-1;i>=0;i--)
   {
    mask[i]=j+'a'-1;
    j--;
   }
   mask[w]='\0';
   //printf("mask : %s \n",mask);
           
   for (i=0;i<5 && next() ;i++)
       printf("%s\n",str);
    //while (1);
    return 0;
}

//end


类别:Noip | 添加到搜藏 | 浏览() | 评论 (0)
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码: 请点击后输入四位验证码,字母不区分大小写
      

     

©2009 Baidu