数学模型:

  已知n,求n中取k(k<=n)个数组成的m(m<=n)个的集合的排列数.

分析:

  因为是统计个数,和求组合数类似(见波利亚的解题法表),方法也差不多;

  f[i][j]表示的i个数组成j个集合的个数;

  如果第i个数是单独成一个集合,有j个位置可以插入,f[i-1][j-1]*j;

  如果第i个数是插入已有的j个集合,f[i-1][j]*j;

  算完之后n个数取k个的组合数.

View Code

#include<cstdio>
#include<cstring>
using namespace std;int main()
{long long i,j,m,dp[12][12],sum[12],c[12][12];int k,T,n;memset(dp,0,sizeof(dp));memset(sum,0,sizeof(sum));memset(c,0,sizeof(c));dp[1][1]=1;for(i=0;i<12;i++)c[i][0]=c[i][i]=1;for(i=2;i<12;i++)for(j=1;j<=i;j++)c[i][j]=c[i-1][j-1]+c[i-1][j];sum[1]=1;for(i=2;i<12;i++)for(j=1;j<=i;j++){dp[i][j]=(dp[i-1][j-1]+dp[i-1][j])*j;sum[i]+=dp[i][j];}scanf("%d",&T);for(k=1;k<=T;k++){scanf("%d",&n);for(i=1,m=0;i<=n;i++)m+=c[n][i]*sum[i];printf("%d %d %lld\n",k,n,m);}return 0;
}

转载于:https://www.cnblogs.com/xchaos/archive/2012/06/21/2557205.html

POJ 3088 Push Botton Lock相关推荐

  1. HOJ题目分类//放这儿没事刷刷学算法!嘻嘻!

    各种杂题,水题,模拟,包括简单数论. 1001 A+B 1002 A+B+C 1009 Fat Cat 1010 The Angle 1011 Unix ls 1012 Decoding Task 1 ...

  2. matlab创建图形用户界面,Matlab 用户图形界面 基础 (一)

    创建 MATLAB 用户图形界面必须由三个基本元素: 1.组件 在 MATLAB GUI 中的每一个项目(按钮,标签,编辑框等)都是一个图形化组件组件可分为三类:图形化控件(按钮,编辑框,列表,滑动条 ...

  3. 第九章-构建图形用户界面

    guid:打开GUI push botton 当用户在其上单击鼠标时激活按钮 slider 通过调整滑块的位置输入数据 radio bottun(单选按钮) 将其状态从'未选定'更改为'选定'并返回 ...

  4. qt ui界面加入qsplitter_UI 文件设计与运行机制

    上一篇通过一个 "Hello World" 实例,演示了在 Qt Creator 里创建应用程序.设计窗体界面.编译和运行程序的基本过程.这一篇将介绍可视化设计的 UI 界面文件的 ...

  5. CODE[VS] 3411 洪水

    题目描述 Description 小浣熊松松和朋友到野外露营,没想到遇上了π年一次的大洪水,好在松松是一只爱观察的小浣熊,他发现露营地的地形和洪水有如下性质: ①露营地可以被看做是一个N*M的矩形方阵 ...

  6. C++定时器的实现之格式修订版

    个人认为一个完备的定时器需要有如下功能: 在某一时间点执行某一任务 在某段时间后执行某一任务 重复执行某一任务N次,任务间隔时间T 那么如何实现定时器呢?下面是我自己实现的定时器逻辑,源码链接最后会附 ...

  7. java线程同步的实现_【Java多线程系列三】实现线程同步的方法

    packagecom.concurrent.test;importjava.util.Stack;importjava.util.concurrent.ArrayBlockingQueue;impor ...

  8. 我的MVVM框架 v0.1发布

    如果经常浏览我博客的人就发现,我三个月前就搞鼓过一下什么MVVM与MVC的比较,knockout.js与ember.js.然后就没动静了,因为之后一个月,我的MVVM就孵化出来,开发代码很逆天也很龌鹾 ...

  9. 使用 RTSCapture 类可以防止帧处理速度小于接收速度而导致花屏或者断流(崩溃)opencv-python RTSP

    opencv处理视频速度跟不上视频送过来的速度,会导致资源积压!如何设置一个缓冲区,在一定时间里只取最新的资源,剩下资源的清空? 在使用opencv处理视频的过程中,通常我们会读取视频帧,读取出来的视 ...

  10. MegDet 与 Synchronized BatchNorm

    旷视科技(Face++)的 MegDet 网络取得了 COCO 2017 Challenge 竞赛的检测项目冠军,论文 MegDet: A Large Mini-Batch Object Detect ...

最新文章

  1. 目标检测-- DeNet: Scalable Real-time Object Detection with Directed Sparse Sampling
  2. python if __name__ == '__main__'
  3. .NET速度的问题,不是最重要的
  4. 《Effective-Ruby》读书笔记
  5. Virtual Box6.1配置CentOS6.5版本的网络连接(静态IP设定)——虚拟机和宿主机互相ping通以及ping通连接外网
  6. 基于EasyDarwin实现幼儿园监控类项目
  7. Microsoft Visual Studio 打开代码出现乱码解决方案
  8. 一个Form中2个按钮,PHP后台如何判断提交的是哪一个按钮
  9. 磁共振立体定向仪行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  10. linux ftp mysql_linux搭建ftp服务——未连接mysql数据库的做法
  11. cellmap 基站查询 for android
  12. Mask-rcnn算法流程图
  13. oracle 回收站清空,Oracle 清空回收站
  14. 华北电力计算机类哪个专业好,华北电力大学哪个专业好就业
  15. js实现千位分隔符运算
  16. 基于JavaEE的健身房管理系统的设计
  17. 微信内链接已禁止访问是什么情况?微信链接防封细节
  18. java-php-python-springboo垃圾分类网站计算机毕业设计
  19. 今年米粉节再推爆款 3999入手安卓影像旗舰11Ultra
  20. MacOS没有管理员账号的解决方法

热门文章

  1. cPanel主机自定义php.ini文件
  2. 2021-08-30 天翼云 搬家问题
  3. openwrt web框架luci简介,20行代码写一个前后端交互页面
  4. Java字符串(超超超详细)
  5. 360wifi: 手机锁屏360wifi掉线的解决方法
  6. BigDecimal表示0.1
  7. V831基础-切换屏幕
  8. API MISUSE: <CBPeripheralManager: 0x282c00070> can only accept this command while in the powered on
  9. 树莓派4B:智能植物管家
  10. html内容太大超过盒子范围,HTML内容超过div宽度不能自动换行解决方法