NYOJ 46 最少乘法次数
2015-07-03 18:55
232 查看
#include<stdio.h>
int f(int n)
{
int s;
if(n==1)
s=0;
else if(n==2)
s=1;
else if(n%2==0)
s=f(n/2)+1;
else
s=f(n-1)+1;
return s;
}
int main()
{
int num,a;
scanf("%d\n",&num);
while(num--)
{
//int a;
scanf("%d",&a);
printf("%d\n",f(a));
}
}
int f(int n)
{
int s;
if(n==1)
s=0;
else if(n==2)
s=1;
else if(n%2==0)
s=f(n/2)+1;
else
s=f(n-1)+1;
return s;
}
int main()
{
int num,a;
scanf("%d\n",&num);
while(num--)
{
//int a;
scanf("%d",&a);
printf("%d\n",f(a));
}
}
相关文章推荐
- CSS透明属性详解代码
- 【剑指offer】面试题22:栈的压入、弹出序列
- 设计模式之单例模式:懒汉&饿汉
- 快速排序的非递归实现
- Linux中三种SCSI target的介绍之LIO
- android反编译-smali语法
- JSP,EL,JSTL快速入门
- apktool 反编译 Input file was not found or was not readable.问题解决方案
- 如何为ios酷我音乐盒下载导出的音乐文件(使用Java程序设计)
- Implement strStr()
- Ngx_Lua使用分享
- 正确定义Objective-C常量
- CSS透明属性详解代码
- Python笔记:_mysql常用操作
- app store上传图片显示错误:未能创建 屏幕快照
- Java 并发0
- Hibernate4.0之HibernateSessionFactory源码详解
- Android 适配器(Adapter)、观察者(Observer) 模式
- python install pycurl
- 利用CSS3实现气泡效果的教程