首页 > 试题广场 >

循环右移

[编程题]循环右移
  • 热度指数:1136 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
有一个二进制数的字符串,想把字符串循环右移k位,然后得到一个新的二进制数,求这个数的十进制值是多少。给定一个二进制字符串str和循环位移位数k,返回循环后的二进制数的十进制值。

示例1

输入

"10110",2

输出

21

说明

新二进制串为“10101”,十进制值为21 

备注:
头像 诗云panther
发表于 2021-08-14 11:29:53
class Solution {public: /** * 位移后二进制串的十进制值 * @param str string字符串 二进制字符串 * @param k int整型 循环位移次数 * @return long长整型 */ long l 展开全文
头像 AimerAimer
发表于 2021-10-14 23:11:37
题意:         有一个二进制数的字符串,把字符串循环右移k位,然后得到一个新的二进制数,求这个数的十进制值是多少。       &nbs 展开全文
头像 东溪看水
发表于 2020-07-31 17:49:38
题目 给定一个二进制字符串 str,把字符串循环右移 k 位,然后得到一个新的二进制数,返回这个数的十进制值。 解题思路 将字符串 str 循环右移 k 位,相当于将 str 后面 k 个字符截断并将其加到字符串前面。对得到的字符串使用按权相加法从二进制转十进制。 C++代码 class Solut 展开全文
头像 changed.
发表于 2021-09-24 22:09:54
题意整理: 题目给出一个表示二进制数的字符串,要求输出将字符串循环右移k位后得到新的二进制串对应的二进制数的的十进制值。 方法一:剪切得到右移后字符串求值 核心思想: 将一个字符串循环右移k位,实际上就是将其末尾的k个字符剪切后拼接至首部,所以可以剪切后进行按位计算即可例如:(为方便观察,此处不以二 展开全文
头像 CroMarmot
发表于 2021-09-28 19:49:01
题意 以字符串的形式给一个二进制数,对这个二进制数循环右移kkk位,求右移结果的十进制的值。 二进制位数小于等于636363 方法 模拟 按照题意,我们操作字符串k次,每次移动一位,63次后得到了目标的二进制表示的字符串 再对二进制字符串进行转化成10进制,需要注意的是这里是long long 不是 展开全文