首页 > 试题广场 >

0左边必有1的二进制字符串的数量

[编程题]0左边必有1的二进制字符串的数量
  • 热度指数:1546 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
给定一个整数n,求由“0”字符和“1”字符组成的长度为n的所有字符串中,满足“0”字符的左边必有“1”字符的字符串的数量。

输入描述:
输入一行,包含一个整数n


输出描述:
输出一个整数,表示返回的答案,由于字符串的数量巨大,可能会溢出,请输出对取模后的答案。
示例1

输入

1

输出

1

说明

只有“1”满足
示例2

输入

2

输出

2

说明

只有“10”和“11”满足
示例3

输入

3

输出

3

说明

只有“101”,“110”,“111”满足

备注:
时间复杂度。额外空间复杂度
头像 WYJ96
发表于 2021-08-04 23:28:08
/*方法3:快速幂 时间复杂度O(logN) 取模的话在乘法除加上即可 * */ public static int getNum3(int n) { if (n < 1) { return 0; } 展开全文

问题信息

上传者:小小
难度:
9条回答 7514浏览

热门推荐

通过挑战的用户

查看代码