我想知道怎样才能最快的算清楚一个个位数的N次方的结果

[复制链接]
查看11 | 回复2 | 2011-10-11 10:17:21 | 显示全部楼层 |阅读模式
比如说6的9次方的结果
回复

使用道具 举报

千问 | 2011-10-11 10:17:21 | 显示全部楼层
利用递归,复杂度也是O(logN)longintPow(longintX,unsignedintN){if(N==0)return1;if(N--1)returnX;if(IsEven(N))returnPow(X*X,N/2);elsereturnPow(X*X,N/2)*X;}追问能不能通俗点??
回复

使用道具 举报

千问 | 2011-10-11 10:17:21 | 显示全部楼层
两位数有理数乘方的简便算法:以1结尾的,十位相乘,再加原数和十位例如:1010*101110=121以9结尾的,原数加一的平方减原数减(原数加一)例如:1920*20-19-20((=400-39)这一步在脑里想好)=361或者这样以后计算时用这种方法来计算例如:23*2323*3=6923*20=46009=966=2(进x就记住它)401=5(现在才加x)答案529
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行