nyoj 46-最少乘法次数
来源:互联网 发布:引入js加随机数 编辑:程序博客网 时间:2024/05/16 12:33
点击打开链接
最少乘法次数
时间限制:1000 ms | 内存限制:65535 KB
难度:3
- 描述
给你一个非零整数,让你求这个数的n次方,每次相乘的结果可以在后面使用,求至少需要多少次乘。如24:2*2=22(第一次乘),22*22=24(第二次乘),所以最少共2次;
- 输入
- 第一行m表示有m(1<=m<=100)组测试数据;
每一组测试数据有一整数n(0<n<=10000); - 输出
- 输出每组测试数据所需次数s;
- 样例输入
3234
- 样例输出
122
使用二分的方法把次数多次二分,有点求快速幂的思想。
#include<stdio.h>int num[100001];int main(){int i;num[1]= 0;num[2] = 1;num[3] = 2;for(i = 4; i < 100001; i++){if(i % 2 ==0)num[i] = num[i/2] + 1;elsenum[i] = num[i/2] + 2;}int n, m;scanf("%d" , &n);while(n--){scanf("%d", &m);printf("%d\n", num[m]); }return 0;}
- NYOJ-46:最少乘法次数
- nyoj 46-最少乘法次数
- nyoj-46-最少乘法次数
- nyoj 46 最少乘法次数
- Nyoj 46 最少乘法次数
- nyoj 46 最少乘法次数
- NYOJ-46 最少乘法次数
- nyoj 46 最少乘法次数
- NYOJ 46 最少乘法次数
- 最少乘法次数 nyoj 46
- 【NYOJ】[46]最少乘法次数
- NYOJ-46-最少乘法次数
- NYOJ:46-最少乘法次数
- NYOJ-最少乘法次数
- NYOJ 最少乘法次数
- NYOJ 46-最少乘法次数(数论)
- 46 最少乘法次数
- NYOJ 题目46最少乘法次数(模拟)
- 排序之快速排序
- Android录音程序,生成裸数据,没有加Header
- Visual C++ 设置适合自己的解决方案目录结构
- [centos]设置光盘为yum源
- 在二叉排序树中查找和为给定值的路径
- nyoj 46-最少乘法次数
- HDU 4286 Data Handler [栈,双端队列]
- sql中用JOIN USING 简化JOIN ON
- jquery ajax调用cxf restful webservice 经验分享
- oracle 11.2.0.3 资源下载
- poj 1062 昂贵的聘礼 dijkstra
- WCF 4.0----- 默认绑定和行为配置
- javaweb之Filter详解
- WINCE——部分文件说明