Kim Schrijvers
Consider an ordered set S of strings of N (1 <= N <= 31) bits. Bits, of course, are either 0 or 1.
This set of strings is interesting because it is ordered and contains all possible strings of length N that have L (1 <= L <= N) or fewer bits that are `1'.
Your task is to read a number I (1 <= I <= sizeof(S)) from the input and print the Ith element of the ordered set for N bits with no more than L bits that are `1'.
PROGRAM NAME: kimbits
INPUT FORMAT
A single line with three space separated integers: N, L, and I.
SAMPLE INPUT (file kimbits.in)
5 3 19
OUTPUT FORMAT
A single line containing the integer that represents the Ith element from the order set, as described.
SAMPLE OUTPUT (file kimbits.out)
10011
题意:
给出 N(1 ~ 31),L(1 ~ N),I,代表有一个 N 长度的 01 字符串,要求输出第 I 个满足 N 长度,其中里面 1 的个数不大于 L 的 01 字符串。
思路:
DP。设 dp [ i ] [ j ] 代表 i 长度时候,1的个数不大于 j 时候的字符串方法种数。所以:
dp [ i ] [ j ] = dp [ i - 1 ] [ j ] + dp [ i - 1 ] [ j - 1 ] 。最后根据 dp [ i ] [ j ] 找出这个字符串,如果从右自左的第 K 位是1的话,必然满足 dp [ k - 1 ] [ j ] < I <= dp [ k ] [ j ],所以不断判断是否 dp [ k - 1 ] [ j ] 是否大于 I 即可,如果满足,则 I -= dp [ k - 1 ] [ j ] ,且 --j。
AC:
/* ID:sum-g1 LANG:C++ PROG:kimbits */ #include <cstdio> #include <cstring> #include <algorithm> using namespace std; typedef long long ll; ll dp[50][50]; int main() { freopen("kimbits.in", "r", stdin); freopen("kimbits.out", "w", stdout); ll len, num, ans; scanf("%lld%lld%lld", &len, &num, &ans); for (ll i = 0; i <= len; ++i) { dp[i][0] = 1; dp[0][i] = 1; } for (ll i = 1; i <= len; ++i) { for (ll j = 1; j <= num; ++j) { dp[i][j] = dp[i - 1][j] + dp[i - 1][j - 1]; } } for (ll i = len; i >= 1; --i) { if (dp[i - 1][num] < ans) { ans -= dp[i - 1][num]; --num; printf("1"); } else printf("0"); } printf("\n"); return 0; }
相关推荐
标题"DP-DP-Koppler_Rel3_www.44dpdp.com_www.44dpdp.con_EC1-DEB-DPM_GSD"中提到的"DP-DP-Koppler"可能指的是一个特定的软件或系统开发项目,其中"DP"可能是项目代号或者代表“Data Processing”的缩写,而"Koppler...
DisplayPort(DP)1.4标准是视频电子标准协会(VESA)发布的一种高级数字接口规范,用于在显示设备和视频源之间传输未压缩的音频和视频数据。DP1.4标准是DP接口的一个重要升级,它在DP1.3的基础上引入了多项技术创新...
西门子DP耦合器(DP-DP Koppler)是西门子S7-300和S7-400系列PLC系统中的一个重要组件,用于实现PROFIBUS DP现场总线网络中的主站与主站或者主站与从站之间的通信连接。GDS(Generic Device Services)文件则是这种...
DP1.4标准——VESA Proposed DisplayPort (DP) Standard 标题:DP1.4标准——VESA Proposed DisplayPort (DP) Standard 描述:该文档定义了一个灵活的系统和设备,能够在Source设备和Sink设备之间通过数字通信接口...
### DP1.4标准——VESA Proposed DisplayPort (DP) Standard #### 概述 DisplayPort(简称DP)是由视频电子标准协会(VESA)制定的一种数字显示接口标准,旨在提供一种灵活、高效的数字通信接口,用于源设备...
区间DP概率DP树形DP插头DP,每种DP一道典型例题,有助于初学者
DisplayPort (DP) 接口是一种数字视频接口技术,由Video Electronics Standards Association (VESA) 制定,用于连接显示器和其他设备,如显卡、电视、笔记本电脑等。DP接口以其高带宽、多通道传输和对音频的支持而受...
**内容概览:** 本章节详细介绍了DP-F系列(包括DP-F850、DP-F650、DP-F620、DP-F550、DP-F520)的具体规格参数、外观尺寸以及各个组件的功能。 1. **规格参数:** 包括但不限于工作电压、功率消耗、打印速度、分辨率...
西门子DP(Decentralized Periphery)是西门子S7系列PLC中的一个分布式I/O系统,它是SIMATIC自动化系统的一个重要组成部分。DP系统允许用户将输入/输出模块分布在网络的不同节点上,以适应复杂的工业现场环境,提高...
S7-1500 如何使用 DP 通信模块作为 DP 从站连接到 S7-300 CPU(STEP7) Profibus DP 通信是一种广泛应用于工业自动化领域的现场总线技术。它规定了串行现场总线系统的技术和功能特性,通过这个系统,从底层...
CPU315-2DP 用集成 DP 端口做第三方 DP 从站的组态和编程 CPU315-2DP 是一种工业控制器,具有集成的 DP 端口,可以组态为 DP 主站或 DP 从站。本文将介绍如何使用 CPU315-2DP 的集成 DP 端口做第三方 DP 从站的组态...
`dx`和`dp`(Density-independent Pixels)是Android系统中处理像素单位的关键概念,它们对于创建跨设备一致的用户体验至关重要。本文将详细探讨`dx`、`dp`以及如何在像素和`dp`之间进行转换。 `dp`,全称为密度...
根据提供的FPGA板载DP 1.4 TX与RX原理图的信息,我们可以深入解析其中涉及的关键技术点。本文将从接口标准、FPGA在显示接口中的应用、DP 1.4标准特性、信号线功能以及电路设计细节等方面进行详细介绍。 ### 1. DP ...
《基于DP屈服准则的西原本构模型及其运用》是由沈才华撰写的一篇文章,主要探讨了在材料力学领域中如何利用DP屈服准则构建西原(Simo-Hughes)本构模型,并介绍了如何在有限元分析软件中通过UMAT子程序实现这一模型...
在工业自动化领域,西门子S7-1500 PLC(可编程逻辑控制器)是广泛应用的控制器之一,它支持多种通信协议,其中包括DP(Profibus-DP)通信。DP通信模块如CP1542-5使得S7-1500能够与其他设备如S7-300进行高速数据交换...
A2DP协议中文精简版 A2DP(Advanced Audio Distribution Profile)是一种蓝牙应用层协议,主要用于传输高保真立体声数据流。该协议栈基于蓝牙1.1规范的应用框架基础上,并且利用了嵌入式蓝牙开发平台,实现了基本的...
### DP83640使用要点深度解析 #### 前言 DP83640作为一款集成1588功能的Ethernet PHY芯片,在PTP(Precision Time Protocol)和POE(Power over Ethernet)设备中扮演着核心角色。本文旨在深入探讨DP83640的关键...
1. 同一项目中S7-1200 与 S7-300 集成 DP 口之间 DP 主从通信,S7-1200 通过CM1243-5作为 DP 主站,S7-300 集成 DP 口作为 DP 从站; 2. 不同项目中S7-1200 与 S7-300 集成 DP 口之间 DP 主从通信,S7-1200 通过CM...
在Android系统中,蓝牙A2DP(Advanced Audio Distribution Profile)用于无线传输高质量音频,但在实际使用过程中,用户可能会遇到听歌卡音的问题。这可能是由于多种因素引起的,包括硬件问题、软件兼容性、蓝牙RF...
DisplayPort (DP) 1.4 规范是由视频电子标准协会(VESA)制定的,旨在提供一种灵活的系统和设备,用于在源设备和接收设备之间通过数字通信接口传输视频、音频和其他数据。该标准不仅适用于内部连接,如个人电脑或...