首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
10进制 VS 2进制
[编程题]10进制 VS 2进制
热度指数:21505
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 64M,其他语言128M
算法知识视频讲解
对于一个十进制数A,将A转换为二进制数,然后按位逆序排列,再转换为十进制数B,我们称B为A的二进制逆序数。 例如对于十进制数173,它的二进制形式为10101101,逆序排列得到10110101,其十进制数为181,181即为173的二进制逆序数。
输入描述:
一个1000位(即10^999)以内的十进制数。
输出描述:
输入的十进制数的二进制逆序数。
示例1
输入
173
输出
181
马上挑战
算法知识视频讲解
提交运行
算法知识视频讲解
添加笔记
求解答(36)
邀请回答
收藏(350)
分享
提交结果有问题?
103个回答
43篇题解
开通博客
philos
发表于 2021-02-05 21:09:49
思路 比如 173,二进制形式是 10101101,我们在求二进制形式的时候求出来的结果其实就是倒着的,那么我们刚好就可以直接算出来逆序的二进制形式对应的值。 但是因为 A 可能是一个非常大的数,所以直接算不合适,所以我们需要记住一个进制转换的模板!很重要,划重点。这其实是一个模拟竖式除法的过程(数
展开全文
渺小小螃蟹
发表于 2021-06-10 11:28:53
#include<iostream> #include<cstdio> #include<string> #include<vector> using namespace std; string Divide(string str,int x)
展开全文
猫和老鼠之张鱼小丸子
发表于 2024-03-05 21:35:45
犯了一个错误,就是加法和乘法最后都需要看有无进位,如果有,则需在前添1。 因为没有考虑到加法也需要,我找了好几十分钟,希望以后吸取教训,不再犯同样的错误,大家也注意一下!!! #include <iostream> #include <cmath> using namesp
展开全文
czhappy
发表于 2020-04-06 10:41:43
利用Java大数即可,详情请看代码 import java.math.BigInteger; import java.math.BigDecimal; import java.util.Scanner; import java.util.Vector; public class Main {
展开全文
鱼儿恋上水
发表于 2020-03-24 15:16:32
高精度的进制转换:https://www.cnblogs.com/kuangbin/archive/2011/08/09/2132467.html编写一个进制转换函数,由转换过程可知,保存大数求模的数组已经是逆序的,只要删除数组开头连续的0,再用进制转换函数转换为10进制即可。代码如下: #incl
展开全文
牛客600247800号
发表于 2022-02-25 19:15:22
从二进制转十进制,只需从低位到高位依次加上各数位的值,并不断乘以2就能实现转换。由于是对字符串进行操作,因此需要重新编写两个函数来实现字符串对应的乘法和加法操作。 对于乘法运算,函数的做法是将字符串从低位到高位逐位乘以乘数。如果某位乘以乘数后超过了10,那就让其对10取模,并保留进位。之后,将进位和
展开全文
土尔逊Torson
发表于 2023-05-04 00:03:37
//土尔逊Torson 编写于2023/5/04 #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <cstdio> #include <string> #include <vector
展开全文
Chisatowo
发表于 2025-03-20 19:02:08
采用大数除法来实现进制转换,容易错的一个误区在于不用执着于利用字符串的最后一位进行求余,当你从m进制转换为n进制且n > m时不能这么做, 只能通过大数除法做除留余数进行进制转换. #include<bits/stdc++.h> using namespace std; typed
展开全文
烤肉__
发表于 2022-01-29 14:11:06
#include <iostream> #include <vector> #include <iostream> #include <algorithm> using namespace std; vector<int> bas_cha
展开全文
宁静的冬日
发表于 2022-03-05 10:18:05
【C++】已通过 核心思路: 首先写出string模拟人工计算的乘2,除2,的函数mul和div,返回值用string返回 利用div可以将10进制s化成二进制bin_s,然后利用mul将bin_s化成s,解决。 注意:转换过程中,注意字符串的正逆序。 ">#include<string&
展开全文
问题信息
位运算
基础数学
难度:
103条回答
350收藏
17263浏览
热门推荐
通过挑战的用户
查看代码
牛客40075...
2023-02-28 23:13:17
上机之王
2023-02-27 23:58:28
牛客91631...
2023-02-22 13:31:43
牛客91553...
2023-02-18 01:52:08
爱读书的斑马很苦闷
2023-02-13 15:48:15
相关试题
车站建造问题
基础数学
评论
(40)
Primary Arithmetic
字符串
基础数学
位运算
评论
(39)
旅行Ⅱ
动态规划
位运算
评论
(1)
从所给的四个选项中,选择最合适的一...
图形推理
评论
(1)
心理暗示是指个体在无意识情况下,从...
定义判断
评论
(1)
10进制 VS 2进制
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题
173
181