设为首页 加入收藏

TOP

The Hamming Distance Problem(二)
2013-01-01 14:51:18 来源: 作者: 【 】 浏览:726
Tags:The  Hamming  Distance  Problem

 

  代码二:

  #include <iostream>

  #include <cstdio>

  #include <cstring>

  #include <algorithm>

  using namespace std;

  void print_permutation(char *s,char *str,int len ,int cur)

  {

  if(cur==len) printf("%s\n",str);

  else for(int i=0;i<len;i++)

  if(!i||s[i]!=s[i-1])

  {

  int c1(0),c2(0);

  for(int j=0;j<len;j++) if(s[i]==s[j]) c1++;

  for(int j=0;j<cur;j++) if(s[i]==str[j]) c2++;

  if(c2<c1)

  {

  str[cur]=s[i];

  print_permutation(s,str,len,cur+1);

  }

  }

  }

  int main()

  {

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

  char s[20],str[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';

  memset(str,0,sizeof(str));

  print_permutation(s,str,len,0);

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

  }

  return 0;

  }

      

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇当C++遇到IOS应用开发 下一篇C++标准库map类型

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: