Poj 1489 Egyptian Multiplication

本文介绍了一种基于二进制表示的特殊数值系统中进行乘法运算的方法。该方法利用二进制位操作简化计算过程,并通过示例代码详细解释了如何实现这一算法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

大概意思是计算a*b,把b转换成二进制计算。

 

1. 数值系统无零,用|代表一,用n代表十,用9代表百,用8代表千,用r代表万,不考虑大于99,999的数

 

2.一个数被写成它们的组合,每组后面有一个空格,包括最后一组,如4023=>||| nn 8888 

 

3.做乘法,将|写在左边,a写在右边,不断将左右的数增倍直到左边的数大于b,将能组合成b的数后面加*。

   其实就是把b换成二进制,为1的位后面带*。

 

4.把左边有*的行的右边加起来就是答案了。

 

5.右边从第35开始打印~

 

6.最后以一个空行结束。

 

话说描述乘法的那段题意好难懂,读了两遍,开始比较大小的函数写搓了,检查了好久~

 

 

 


收获:

多写函数,将不同功能的写成函数,代码短,写得快,好检查。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值