【数学】奶牛编号(jzoj 2932)
奶牛编号
jozj 2932
题目大意
求出有m个1的01串中字典序第n大的字典序
输入样例
7 3
输出样例
10110
数据范围
1⩽M⩽101 \leqslant M \leqslant 101⩽M⩽10
1⩽N⩽1071 \leqslant N \leqslant 10^71⩽N⩽107
解题思路
我们先从01串长度入手:
先对m=1m = 1m=1的特判
然后m⩾2m \geqslant 2m⩾2的我们用组合数来判断当前位是否为1(详情见代码)
代码
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define ll long long
using namespace std;
ll n, m, a, b, p;
int main()
{scanf("%lld%lld", &n, &m);if (m == 1)//特判{printf("1");for (int i = 1; i < n; ++i)printf("0");return 0;}for (ll i = 5000; i > 0; --i)//C_(5000,2)>10^7,已经足够了if (!m) printf("0");else{a = b = 1;//c_(i,m)就是这一位是0的组合数for (ll j = m; j > 1; --j)//组合数公式的分母部分b *= j;for (ll j = i; j > i - m && a / b < n; --j)//分子部分,a/b<n是防止数据过大a *= j;if (a / b < n)//如果这一位是1那n就比C_(i,m)大{printf("1");m--;n -= a / b;p = 1;}else if (p) printf("0");}if (m) printf("1");else printf("0");return 0;
}
【数学】奶牛编号(jzoj 2932)相关推荐
- 【DP】和谐的奶牛(jzoj 1750)
和谐的奶牛 题目大意: 有一些括号(保证是合法的,合法:每一个左括号都有自己配对的有括号),现在要将这些括号分为两组(其中一组可以为空),分完组后括号的顺序要和原来的一样,问有多少种方法使括号分组,结 ...
- bzoj 3374: [Usaco2004 Mar]Special Serial Numbers 特殊编号
3374: [Usaco2004 Mar]Special Serial Numbers 特殊编号 Time Limit: 10 Sec Memory Limit: 128 MB Submit: 20 ...
- 【word】常用数学符号、数学表达式的快捷键(持更)
在word中输入数学符号,可以在插入菜单栏中找到符号选项,点进去挨个找要插入的符号,比如集合里的"属于".这种插入的方式很麻烦,写一个"x²+y²≤1"就要重复 ...
- 2049. 奶牛摄影
奶牛们今天非常调皮. 农夫约翰想给站成一排的奶牛拍一张照片,但是在他有机会拍下照片之前,奶牛一直在移动. 具体的说,约翰有 N 头奶牛,编号 1∼N. 约翰想拍一张奶牛以特定顺序站成一排的照片,这个顺 ...
- 2020.08.08【NOIP提高组】模拟:奶牛的图片 总结
2020.08.08[NOIP提高组]模拟:奶牛的图片 总结 Description Farmer John希望给他的 N ( 1 ≤ N ≤ 100 , 000 ) N(1\leq N\leq100 ...
- BZOJ1782[USACO 2010 Feb Gold 3.Slowing down]——dfs+treap
题目描述 每天Farmer John的N头奶牛(1 <= N <= 100000,编号1-N)从粮仓走向他的自己的牧场.牧场构成了一棵树,粮仓在1号牧场.恰好有N-1条道路直接连接着牧场, ...
- [spfa][差分约束] 洛谷 P3084 照片Photo
题目描述 Farmer John has decided to assemble a panoramic photo of a lineup of his N cows (1 <= N < ...
- Hoofball(B题)
题面: 题目大意: 为了准备即将到来的马蹄球锦标赛,农夫约翰正在训练他的N头奶牛.奶牛都站在谷仓的一边,排成一条很长的队伍,奶牛站在单位离开谷仓(1< xi< 1000).每头牛都站在不同 ...
- [爱奇艺]校招笔试(2017/9/11)
题目2: 如果一个数字满足以下条件,就称它是奇异数 1.这个数字至少有两位 2.这个数字的最低两位是相同的 计算区间[L,R]内的所有奇异数. 参考答案: #include <iostr ...
最新文章
- IIC通信控制的AD5259------在调试过程中遇到的奇葩问题
- php mysql 修改密码_设置及修改MySQL root用户密码
- jquery1.6中的.prop()和.attr()异同
- Linux服务器编程 用SIGURG检测带外数据是否到达
- IOS疯狂基础之GIF图片的显示
- Adwonder笔记
- AE插件自动创建图层工具LayerGenerators使用教程
- android 生成长截图,【UNIAPP截长图】方案之一:滚动截屏 Android
- 区块链-WeBase企业部署
- SpringMVC中的MultipartResolver,LocaleResolver
- 作为一名APP开发者,你更Care什么?
- jovi语音助手安装包_Jovi语音助手安装包下载-vivoJovi语音助手v3.1.1.0 最新版-腾牛安卓网...
- 易拉宝Roll up Banner
- 揭秘考研英语阅读理解技巧(何凯文)
- 计算机前沿技术云论文,计算机前沿技术论文.doc
- 为Adobe Reader添加书签功能
- 轻松搞定PMP考试的计算题---挣值管理(EVM)
- newff新旧用法/minmax函数的用法
- 隐写术之pngIDAT隐藏信息
- 【职坐标】java面向对象三大特性(二)——继承详解
热门文章
- HTML第八章ppt,第八章 web基础教程之HTML篇v1.0.ppt
- php super和parent,parent()、parents()的用法区别
- java控制系统音量_Java 控制 Windows 系统音量-Go语言中文社区
- 计算机科普小知识——Win7系统32位与64位的区别,该如何选择?
- 算法设计与分析——回溯法——n皇后问题
- Pandas中的 transform() 结合 groupby() 用法示例
- Java面向对象编程(中级)
- [Java基础]自定义注解 格式本质
- 《C++ Primer》7.5.2节练习
- mysql查询语句能否让一个字段不显示出来_天天写order by,你知道Mysql底层如何执行吗?