题目描述:

设有n个整数的集合{1,2,…,n},从中取出任意r个数进行排列(r<n),试列出所有的排列。

代码如下:

#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<iomanip>
using namespace std;
int sum,a[100],b[100];
int search(int);
int print();
int n,r;
int main()
{
scanf("%d%d",&n,&r);//从n个数中选r个数;
search(1);//就是有r个位置,从n中个数选择数字来填,从第一个开始;
cout<<"number="<<sum<<endl;
return 0;
}
int search(int x)
{
for(int i=1;i<=n;i++)//有n种可能
{
if(!b[i])//如果没有被填过
{
a[x]=i;//第x个数是i
b[i]=1; //标志i已经填过;
if(x==r)print();//如果填完,输出
else search(x+1);//否则 填下一个
b[i]=0;//回溯。
}
}
}
int print()
{
sum++;
for(int j=1;j<=r;j++)
cout<<setw(2)<<a[j];
cout<<endl;
}

最新文章

  1. 页面滚动到底部自动 Ajax 获取文章
  2. git超详细教程
  3. J2EE基础之Web服务简介
  4. slickedit的alias配置
  5. sql2000 (附加数据库)错误9003:LSN(434:94:1)无效和数据库置疑处理
  6. 【转】ora-00031:session marked for kill处理oracle中杀不掉的锁
  7. css&amp;js实现顶部banner滚动提示效果
  8. Tortoise SVN 更换用户
  9. mysql 关于日期时间的字段类型
  10. MD5和Base64介绍与应用
  11. 一个响应式数据库框架SQLBrite,完美解决数据库和UI的同步更新!
  12. xcode 中添加pch文件
  13. [51Testing情人节活动]情人节,爱要有“礼”才完美!
  14. phalcon做日报告提交平台总结
  15. Android ServiceConnection类的onServiceDisconnected(ComponentName name)在什么时候执行
  16. Sql(in与exists)
  17. 基于谱聚类的三维网格分割算法(Spectral Clustering)
  18. Memory Monitor
  19. EasyUI 二次加载toolbar异常问题解决
  20. eclipse设置新建jsp默认编码格式utf-8

热门文章

  1. asp.net Cookie 用户登陆时记住我
  2. Understanding When to use RabbitMQ or Apache Kafka
  3. 【HackerRank】Sherlock and Array
  4. PMON使用手册
  5. 【Head First Servlets and JSP】笔记12:URL重写
  6. char,uchar,0xff
  7. 如何编写 Makefile
  8. BZOJ2878 [Noi2012]迷失游乐园
  9. UOJ180 【UR #12】实验室外的攻防战
  10. 考虑 PHP 5.0~5.6 各版本兼容性的 cURL 文件上传