您的位置:首页 > 其它

sicily 6084 Times17

2015-11-10 15:48 274 查看
二进制

题意:

输入n,输出17*n.输入和输出都是二进制码形式

数据范围:

串长度<=1000

思路:

先把输入的二进制串变成10进制,再乘17,再重新从十进制变回二进制?这样太麻烦了,1000位的二进制码意味着你的十进制要高精度

一个数x乘17,可以等于16x+x,对于二进制来说,乘16是一件很简单的事,左移四位补零就是了.

所以方法就是把输入的串加四个零,然后模拟二进制加法加上原串,即可得到17*n

总结:17x=16x+x

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  soj