T1.笨笨与电影票(ticket)

有n个1和m个0,求每个数前1的个数都大于等于0的个数的排列数。

非常坑的一道题,推导过程很烦。首先求出所有排列数是

C(n+m,m),然后算不合法的个数。

假设存在一个排列,1100011010,由5个1和5个0构成,但是从第5位开始是不合法的。如果把6~10位取反变成1100000101,就变成了n-1个1,m+1个0的一种排列。所以不合法的排列为

C(n+m,m-1)

但是这是不够的,因为这样会存不下(即使压位),所以需要另一种算法的辅助。

先对阶乘中的每一个数分解质因数,算出分子分母各自有的每个质因数个数,存在a[i],b[i]中,这样的话对每个质数只要乘(a[i]-b[i])次,完全转化成了高精度乘法。

T2.笨笨当火炬手(torch)

给出一个数n,求最小的数m来使n*m为0和1组成的十进制数。

因为n<=100000,所以最多枚举个1019,也就52万多个。一个个凑就好了啊。

T3.笨笨的雕塑安置(sculpture)

n*n的网格有m个点不能用,求放置n个雕塑,每行每列只有一个的方案数。

正面考虑很麻烦,因为能用的点太多了。所以从反面考虑。

总共的放置方案有n!种,要求出不合法的方案数。

用dfs求出m个格子放了k个的方案数,类似于八皇后,存在r[k]数组中。那么剩下的n-k个雕塑就有(n-k)!种方法,所以共有r[k]*(n-k)!种。

然后利用容斥原理,ans=n!-r[1]*(n-1)!+r[2]*(n-2)!-r[3]*(n-3)!……

这样输出ans即可。(ans和r[]要用long long)

二模12day1解题报告的更多相关文章

  1. 二模13day1解题报告

    二模13day1解题报告 T1.发射站(station) N个发射站,每个发射站有高度hi,发射信号强度vi,每个发射站的信号只会被左和右第一个比他高的收到.现在求收到信号最强的发射站. 我用了时间复 ...

  2. 二模14day1解题报告

    注:Index数☞由4,7组成的十进制数. T1.全排列(permutation) 求n个数的第k个排列中,有多少个Index位置上是Index数. 由于k的范围比较小,n的范围比较大(都是109), ...

  3. 二模12day2解题报告

    T1.笨笨玩糖果(sugar) 有n颗糖,两个人轮流取质数颗糖,先取不了的(0或1)为输,求先手能否必胜,能,输出最少几步肯定能赢:不能,输出-1. 一开始天真的写了一个dp,f[i]表示i颗糖最少取 ...

  4. 二模01day1解题报告

    T1.音量调节(changingsounds) 有n个物品的背包(有点不一样,每个物品必须取),给出初始价值,物品价值可正可负(就是两种选择嘛),求可能的最大价值,不可能(<0或>maxs ...

  5. 二模15day1解题报告

    T1.合并序列(minval) 给出长为 n的AB两个序列求两两相加中最小的n个. 据说有证明(在蓝书上,优先队列部分)先把A[1~n]+b[1]入队,然后每取一个a[x]+b[y]就把a[x]+b[ ...

  6. 二模14day2解题报告

    T1.砍树(cuttree) 给出n棵树,要锯下m米木材,现在有一个高度h,h以上所有木头都砍下来,求满足m米的最小h 很简单的二分答案判断可行性. T2.快速求和(quicksum) 给出数字串s, ...

  7. 二模02day1解题报告

    T1.淘汰赛制 比赛时的淘汰赛制,给出每两个球队比赛的胜率,求出最终胜率最高的队伍. 这题的概率真的很难算啊感觉...一开始打的代码打下来就是用f[i][j]表示i场比赛后第j人还在场的概率.不难看出 ...

  8. 二模07day1解题报告

    T1.种树(tree) 有n棵树,各有高度,要求每棵树的高度都小于它到其他树的距离(可能种一起).求砍掉的总高度是多少. Ok,那么可以想到,只要满足每棵树和最近的树满足条件就可以保证和其他树满足了. ...

  9. 二模07day2解题报告

    T1.采药(medic) 有n个草药,要在m的时间内获得最大价值. 乍一看像是01背包,然而数据只能过50分. 考虑数据范围,t<=10,w<=10,所以只有121种草药.考虑多重背包的二 ...

随机推荐

  1. 配置JDK环境变量,与各步骤的意义

    配置JDK环境变量 1,新建变量名:JAVA_HOME,变量值:C:\Program Files\Java\jdk1.7.0                   (变量值为jdk安装路径) 2,打开P ...

  2. grep命令学习

    grep(Globally search a Regular Expression and Print), 全面搜索正则表达式并把行打印出来,是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把 ...

  3. Linux内核@系统组成与内核配置编译

    Linux系统由什么组成? 由用户空间(应用程序+GNU C标准库)和内核空间(系统调用接口+内核+内核架构代码)组成. Linux内核到底是什么?以及组成. ARM的七种操作级别? 内核网络协议栈( ...

  4. lvs的dr模式分析(二)

      #vim /etc/init.d/lvsdrrip #!/bin/bash #DR server VIP=192.168.46.200 case "$1" in start) ...

  5. IntelliIDEA注册码

    [http://idea.lanyus.com/] BIG3CLIK6F-eyJsaWNlbnNlSWQiOiJCSUczQ0xJSzZGIiwibGljZW5zZWVOYW1lIjoibGFuIHl ...

  6. 学会使用notepad++

    官网地址:https://notepad-plus-plus.org/ 字体尺寸更改:ctrl+鼠标滚轮 主题:设置-语言格式设置,推荐Obsidian或者Zenburn主题,推荐Consolas 1 ...

  7. win10 下 gulp-sass 无法使用的解决

    参考链接: http://stackoverflow.com/questions/28409100/try-reinstalling-node-sass-on-node-0-12 解决方法: npm ...

  8. ios中图片拉伸用法

    - (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCap ...

  9. OAF_开发系列22_实现OAF条形码BarCode

    20150717 Created By BaoXinjian

  10. webUploader react 接口设计

    import React, {PropTypes} from 'react'; export default class Test extends React.Component { construc ...