二分法
2016-04-16 15:17
148 查看
//计算n的k次方一种更节省时间的算法
#include<stdio.h>
int power(int n,int k)
{
int x;
if(k==1)
return n;
x=power(n,k/2);
if(k%2==0)
return x*x;
else
return x*x*n;
}
int main()
{
int s,n,k;
while(~scanf("%d%d",&n,&k))
{
s=power(n,k);
printf("%d\n",s);
}
}
#include<stdio.h>
int power(int n,int k)
{
int x;
if(k==1)
return n;
x=power(n,k/2);
if(k%2==0)
return x*x;
else
return x*x*n;
}
int main()
{
int s,n,k;
while(~scanf("%d%d",&n,&k))
{
s=power(n,k);
printf("%d\n",s);
}
}
相关文章推荐
- 子数组最大和问题
- Android震动---启动、循环、取消控制
- 已知二叉树的前序和中序序列,构建二叉树并求后序序列,java实现。
- linux设备驱动模型
- 百度业务运营部_数据分析师(产品运营)岗位要求详解(1)
- LinuxMint下安装Android Studio
- Android_Button
- 笔记一:虚拟机运行时的数据区域
- self & __set__ __get__ & static、class、abstract
- Deep Learning(深度学习)学习笔记整理
- drawcall优化
- Java 详解instanceof
- MySQL安装未响应解决方法
- 秒杀系统:并发队列 接口设计 并发请求数据安全处理
- mysql zip 安装
- led 的 platform驱动实现
- 从viewport发现小米手机参数不一致
- jquery 实现滚动条下拉时无限加载
- C#一般处理程序设置和读取session(session报错“未将对象引用设置到对象的实例”解决)
- 将dp转换为px