原标题:机试小课堂 | 数学周·例题讲解①《10进制 VS 2进制》
苏世计算机考研,程序猿专属的学习分享社区
/ 写在前面的话 /
苏世机试小课堂,考研机试不再慌。
公主号:苏世学社考研,苏世计算机考研
10进制 VS 2进制
题目描述
对于一个十进制数A,将A转换为二进制数,然后按位逆序排列,再转换为十进制数B,我们称B为A的二进制逆序数。例如对于十进制数173,它的二进制形式为10101101,逆序排列得到10110101,其十进制数为181,181即为173的二进制逆序数。
输入描述
一个1000位(即10^999)以内的十进制数。
输出描述
输入的十进制数的二进制逆序数。
输入
173
输出
181
答案
①读题
就是将一个数转换成二进制,逆序,再将二进制转换成十进制。
②想到思路
输入要求1000位以内,对于这样的大数问题可以用java语言来实现,而且有封装好的函数。
③动手编程
④测试样例
⑤提交代码
复制下面的链接提交核心代码(或阅读原文)
https://www.nowcoder.com/practice/fd972d5d5cf04dd4bb4e5f027d4fc11e?tpId=40&&tqId=21357&rp=1&ru=/ta/kaoyan&qru=/ta/kaoyan/question-ranking
⑥返回评测结果
至此,这道题我们就已经完成了。
本题总结
本题是一个大数题目,将一个十进制转换为二进制,逆序,再转回到十进制,建议用java,写起来方便,代码量相对C++少很多,有toString()、reverse()函数可以直接使用,如果不会java可以学一学,至少以后再碰到这样的大数问题可以直接写出来。
苏世学社旗下品牌,专注于计算机考研
计算机考研一手资讯,原创高质量干货
深度的学习分享丨咨询前辈丨个性化指导
责任编辑: