hpu-1690-CZY的组合数烦恼

简介: hpu-1690-CZY的组合数烦恼


题目描述

czy最近对组合数产生了浓厚的兴趣,一天他心血来潮,想排n个数字,但是很快他发现种类太多了,于是他决定从中随机找出m个数排,但还是太多了,所以他想请聪明的你写个程序帮助他找到所有种类的排列

输入

输入包括多组测试数据,每组包括一行整数n(1<=n<10),m(1<=m<=n),空格间隔

输出

按特定顺序输出所有组合。

特定顺序:每一个组合中的值从大到小排列,组合之间按逆字典序排列。

样例输入

5 3

样例输出

543

542

541

532

531

521

432

431

421

321


题目分析:

还是全排列问题就是在控制排列的方式不一样

     点击这里   看看这个从小到大排列   和这个有什么区别  本博客另一个全排列问题可以参考一下

#include<cstdio>
#include<cstring>
#define INF 0xfffffff
int mark[20],a[20],arr[20];
int n,m;
void dfs(int v)
{
  if(v>m)  //  这里控制输出多少位
  {
    for(int i=1;i<=m;i++)
    printf("%d",a[i]);
    printf("\n");
    return ;
  }
  else
  {
    for(int i=n;i>=1;i--)
    {
      a[v]=i;//   和从小到大的主要区别就在这  那个是把这个放到if语句里面的  这个是先赋值后判断
      if(!mark[i]&&a[v]<a[v-1])
      {
        mark[i]=1;
        dfs(v+1);
        mark[i]=0;
      }
    }
  }
}
int main()
{
  while(~scanf("%d%d",&n,&m))
  {
    memset(mark,0,sizeof(mark));
    a[0]=INF;
    dfs(1);
  }
  return 0;
}





目录
相关文章
|
算法 网络架构
代码随想录算法训练营第三十三天 | LeetCode 1005. K 次取反后最大化的数组和、134. 加油站、135. 分发糖果
代码随想录算法训练营第三十三天 | LeetCode 1005. K 次取反后最大化的数组和、134. 加油站、135. 分发糖果
64 0
|
存储 Linux
还在担心期末挂科吗? 期末必备复习资料-----“树“的概念
还在担心期末挂科吗? 期末必备复习资料-----“树“的概念
140 0
|
算法 索引
代码随想录训练营day34| 1005.K次取反后最大化的数组和 134. 加油站 135. 分发糖果...
代码随想录训练营day34| 1005.K次取反后最大化的数组和 134. 加油站 135. 分发糖果...
104 0
|
存储 关系型数据库 索引
B+树层数计算(面试官直呼内行)
首先搞清楚一个常识,我们都知道计算机在存储数据的时候,有最小存储单元,这就好比我们今天进行现金的流通最小单位是一毛 在计算机中磁盘存储数据最小单元是扇区,一个扇区的大小是 512 字节,而文件系统(例如XFS/EXT4)他的最小单元是块,一个块的大小是 4k
2132 0
|
算法 C语言
假币问题:有n枚硬币,其中有一枚是假币,已知假币的重量较轻。现只有一个天平,要求用尽量少的比较次数找出这枚假币。
(2)当n为奇数时,将前后两部分,即1…n,放在天平的两端,较轻的一端里有假币,继续在较轻的这部分硬币中用同样的方法找出假币;若两端重量相等,则中间的硬币,即第 (n+1)/2枚硬币是假币。n,放在天平的两端,较轻的一端里有假币,继续在较轻的这部分硬币中用同样的方法找出假币;假币问题:有n枚硬币,其中有一枚是假币,已知假币的重量较轻。:因为30位偶数,所以至少要被分一次,然后成为奇数之后,那个假币就是奇数的中位数,所以只需要2次。若输入的硬币数为30,则最少的比较次数为(2),最多的比价次数为(4)。
580 0
|
NoSQL 关系型数据库 MySQL
哈希——1. 两数之和——有人白天相爱,有人夜里看海,有人力扣第一题都做不出来
本专栏按照数组—链表—哈希—字符串—栈与队列—二叉树—回溯—贪心—动态规划—单调栈的顺序刷题,采用代码随想录所给的刷题顺序,一个正确的刷题顺序对算法学习是非常重要的,希望对大家有帮助
|
存储 算法
开卷数据结构?时间和空间复杂度你可得把握住!!不行就让叔来~
时间复杂度和空间复杂度的讲解 常见的复杂度相关练习
|
存储 机器学习/深度学习 算法
《三分钟-算法修行》两数相加之解与应用
《三分钟-算法修行》两数相加之解与应用
139 0
《三分钟-算法修行》两数相加之解与应用