1110: 最少操作数
1110: 最少操作数
1.描述
最近,Dr. Kong 又新设计了一个机器人Bill。这台机器人很聪明,会做许多事情。比如你给它任意一个正整数,它可以按照一定的运算规则, 计算出得到1的最少操作次数。
该运算规则是:
如果n为偶数,将其除以2;如果n为奇数,可以加1或减1;然后一直处理下去,直到得到运算结果为1。
现在假如你给定Bill一个正整数m,你认为它会怎么计算出计算出得到1的最少操作次数。
输入
第一行:n 表示有多少组测试数据。
接下来有n行:每一行有一个正整数m(0<m<100000),表示你给定Bill的正整数。
输出
对于每一行测试数据,输出一行,每行数据为最少操作次数。
样例输入
3
7
15
5
样例输出
4
5
3
2.代码
#include <stdio.h>
#include <stdlib.h>
int i,j,n,m;
int cz(int n)
{if (n==1){return 0;}else if(n%2==0){return 1+cz(n/2);}else if(n==3){return 2;}else if((n+1)%4==0){return 1+cz(n+1);}else{return 1+cz(n-1);}
}
int main()
{scanf("%d",&n);for(i=0; i<n; i++){scanf("%d",&m);j=cz(m);printf("%d\n",j);}return 0;
}
1110: 最少操作数相关推荐
- LeetCode 6055. 转化时间需要的最少操作数(贪心)
文章目录 1. 题目 2. 解题 1. 题目 给你两个字符串 current 和 correct ,表示两个 24 小时制时间 . 24 小时制时间 按 "HH:MM" 进行格式化 ...
- LeetCode 1758. 生成交替二进制字符串的最少操作数(DP)
文章目录 1. 题目 2. 解题 1. 题目 给你一个仅由字符 '0' 和 '1' 组成的字符串 s . 一步操作中,你可以将任一 '0' 变成 '1' ,或者将 '1' 变成 '0' . 交替字符串 ...
- C++描述 LeetCode 5676. 生成交替二进制字符串的最少操作数
C++描述 LeetCode 5676. 生成交替二进制字符串的最少操作数 大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博主目前仅在C ...
- 1758 生成交替二进制字符串的最少操作数
题目描述: 给你一个仅由字符 '0' 和 '1' 组成的字符串 s .一步操作中,你可以将任一 '0' 变成 '1' ,或者将 '1' 变成 '0' . 交替字符串 定义为:如果字符串中不存在相邻两个 ...
- LeetCode每日一题——1758. 生成交替二进制字符串的最少操作数
LeetCode每日一题系列 题目:1758. 生成交替二进制字符串的最少操作数 难度:简单 文章目录 LeetCode每日一题系列 题目 示例 思路 题解 题目 给你一个仅由字符 '0' 和 '1' ...
- leetcode---1758.生成交替二进制字符串的最少操作数
目录 题目:给你一个仅由字符 '0' 和 '1' 组成的字符串 s .一步操作中,你可以将任一 '0' 变成 '1' ,或者将 '1' 变成 '0' . 交替字符串 定义为:如果字符串中不存在相邻两个 ...
- LeetCode-1758-生成交替二进制字符串的最少操作数
1.逐位遍历 我们想要获得最少操作数,实际上只要与两个字符串进行比较即可,一个是1010交替的字符串,一个是0101交替的字符串.其中我们实际上只需要比较一个字符串即可,因为修改成另一个字符串的操作数 ...
- LeetCode 2208. 将数组和减半的最少操作次数(优先队列)
文章目录 1. 题目 2. 解题 1. 题目 给你一个正整数数组 nums .每一次操作中,你可以从 nums 中选择 任意 一个数并将它减小到 恰好 一半.(注意,在后续操作中你可以对减半过的数继续 ...
- LeetCode 1737. 满足三条件之一需改变的最少字符数(计数)
文章目录 1. 题目 2. 解题 1. 题目 给你两个字符串 a 和 b ,二者均由小写字母组成. 一步操作中,你可以将 a 或 b 中的 任一字符 改变为 任一小写字母 . 操作的最终目标是满足下列 ...
最新文章
- linux简单目录,Linux下各目录简单整理
- Kali Linux Web***测试之 WebSploit
- 常见的web漏洞及其防范(转)
- 如何对.NET远程处理框架相关知识简介
- vue代码生成器可视化界面_手把手教你基于SqlSugar4编写一个可视化代码生成器(生成实体,以SqlServer为例,文末附源码)...
- 20应用统计考研复试要点(part32)--简答题
- Ansible-----循环
- 用自定义注解做点什么——自定义注解有什么用
- 《大话设计模式》读书笔记-第13章 建造者模式
- 【华为云技术分享】云容器引擎 CCE权限管理实践
- Linux学习笔记---使用MfgTool工具烧写官方系统(一)
- 分配给 主机的 Evaluation Mode 许可证已过期。建议升级许可证。
- Codeforces Edu Round 68 (Rated for Div. 2)
- Delphi 设计模式:《HeadFirst设计模式》Delphi7代码---工厂模式之简单工厂[转]
- 软件测试之测试计划案例
- 怎么更改坐标轴标题access_excel图表如何修改x坐标轴数值,excel怎么设置横坐标标题...
- 信息录入率百分百上海强化施工现场建筑工人实名制管理
- 【个人博客】Hexo个人博客搭建与配置详细教程 + Fluid主题 + Gitee发布
- 蒟蒻的单调队列orz,真的蒻
- 《计算机组成与系统结构(第二版) 裘雪红 李伯成 西安电子科技大学出版社》课后习题答案(带解析)(七)
热门文章
- 【操作系统三】图解网络IO(bio\nio\slect\epoll)
- Babel是如何读懂JS代码的
- dubbo手册完整版(2019版)
- 微信狠起来为什么连自己人都打?
- 在网上专利缴纳年费具体步骤详细介绍
- Java SE基础(十四)常用API
- sas协议内核代码分析
- [模式识别].(希腊)西奥多里蒂斯第四版笔记6之__feature generation (1):数据转换和降维
- 吉他谱:Kiss the Rain - Sky Guitar Level 2
- 毕业设计选择区块链 Fabric方向需要注意哪些