传统的计算a^n=a*a*....a一般需要计算n-1次乘法
快速幂采用二分算法可以把算法大大加速:算法思想如下:
f(a,n){
if(n==0)return 1;
if(n==1)return a;
t=f(a,n/2);//二分法
if(n%2==0)return t*t;
else return t*t*a;
}
你的任务是计算按照这个算法计算a^n要执行的乘法次数
Time Limit | $1$ 秒/Second(s) | Memory Limit | $512$ 兆字节/Megabyte(s) |
提交总数 | $78$ | 正确数量 | $20$ | "
裁判形式 | 标准裁判/Standard Judge | 我的状态 | 尚未尝试 |
难度 | 分类标签 |
传统的计算a^n=a*a*....a一般需要计算n-1次乘法
快速幂采用二分算法可以把算法大大加速:算法思想如下:
f(a,n){
if(n==0)return 1;
if(n==1)return a;
t=f(a,n/2);//二分法
if(n%2==0)return t*t;
else return t*t*a;
}
你的任务是计算按照这个算法计算a^n要执行的乘法次数
多组输入,每组一个非负整数代表 n <=2^62
1
2
4
0
1
2
本题记录 | 用 户(点击查看用户) | 运行号(点击购买题解) | 时 间 |
---|---|---|---|
算法最快[$0 $ms] | ll213 | 787782 | 2021-11-28 12:33:35 |
内存最少[$0 $KB] | AOJ大管家 | 560587 | 2020-01-02 18:00:51 |
第一AC | 计爱玲 | 560580 | 2020-01-02 17:44:50 |
第一挑战 | 计爱玲 | 560580 | 2020-01-02 17:44:50 |
竞赛编号 | 竞赛名称 | 竞赛时间 | 访问比赛 |
---|---|---|---|
1672 | 2021年下学年第13周周赛 | 2021-11-27 19:00:00 | 请登录 |
1493 | 2019-2020-1学期《C语言程序设计I》期末考试【19计算机12班】 | 2020-01-04 10:20:00 | 请登录 |