The Hamming Distance Problem(一)

2013-01-01 14:51:18 · 作者: · 浏览: 733

  描述:和前面的几道水题一样,还是两种代码,使用库函数的话耗时比较少一点,用刘汝佳的生成可重集排列的方法耗时多,没什么难度

  代码一:

  #include <iostream>

  #include <cstdio>

  #include <cstring>

  #include <algorithm>

  using namespace std;

  int main()

  {

  //freopen("a.txt","r",stdin);

  char s[20];

  int n,len,m;

  scanf("%d",&n);

  while(n--)

  {

  scanf("%d%d",&len,&m);

  memset(s,0,sizeof(s));

  for(int i=0;i<len-m;i++) s[i]='0';

  for(int i=len-m;i<len;i++) s[i]='1';

  do

  {

  printf("%s\n",s);

  }while(next_permutation(s,s+len));

  if(n) printf("\n");

  }

  return 0;

  }