题目描述


源代码

思路:
这道题是真的有坑啊,呜呜呜呜呜呜呜
看题两三遍后,就这?就这?
还特意看了输出格式的那句话:
输出格式:
一个正整数,表示不大于N的数字,经过冰雹数变换过程中,最高冲到了多少。
我还读了好几遍,没发现什么异常啊,很正常啊
然后三下五除二就把代码写完了,运行测试输入9,正确输出52,
然后输入10和100,跟正确答案相差的也太远了,
哈哈哈哈哈,我还严重怀疑题目数据是不是给错了。
。。。。。。。。。
小丑竟是自己
仔细读后面的那句话,
表示不大于N的数字,经过冰雹数变换过程中,最高冲到了多少。
这说明是从后往前推,在1~n之间的所有数字最高的高度取最大的

Idea

一开始的时候感觉是模拟整个过程就行但是提交上去某些数据超时了,所以对当前模拟的代码还需要优化一下,分析题目可以知道偶数最终是可以变为奇数的,所以偶数是没有什么作用的(对偶数的操作都是重复的操作),主要是看奇数,对奇数模拟整个过程即可。
这个哈希表存储 已经计算过的值,避免做更多重复操作

#include<iostream>
#include<cmath>
#include<unordered_map>
using namespace std;typedef long long LL;int main()
{int n;cin>>n;LL ans = n;unordered_map<LL,LL> map;for(LL i = 3;i<=n;i+=2){LL tmp = i;while(tmp>=i){tmp = tmp*3 + 1;ans = max(ans,tmp);while(tmp%2 == 0) {tmp/=2;}if(map.count(tmp)) break;}map[i] = ans ;}cout<<ans;return 0;
}

评测地址

3155. 冰雹数

蓝桥杯2016年七届C/C++省赛C组第八题-冰雹数相关推荐

  1. java比赛题目_【蓝桥杯2016第七届比赛题目】JAVA A组

    1 煤球数目 有一堆煤球,堆成三角棱锥形.具体: 第一层放1个, 第二层3个(排列成三角形), 第三层6个(排列成三角形), 第四层10个(排列成三角形), .... 如果一共有100层,共有多少个煤 ...

  2. 蓝桥杯2016第七届C语言B组省赛习题题解——习题B.生日蜡烛

    每日刷题(十一) 蓝桥杯第七届C语言B组省赛习题 习题B:生日蜡烛 我们可以立刻想到等差数列求和,那就是Sn = (n0 + n)* (n - n0 + 1)/ 2 Sn = 236,很明显这里有两个 ...

  3. 蓝桥杯——2016第七届C/C++真题[省赛][B组]

    目录 1. 煤球数目(结果填空) 2. 生日蜡烛(结果填空) 3. 凑算式(结果填空) 4. 快速排序(代码填空) 5. 抽签(代码填空) 6. 方格填数(结果填空) 7. 剪邮票(结果填空) 8. ...

  4. 蓝桥杯单片机第七届省赛-模拟风扇控制系统

    九层妖塔 起于垒土 ● 改编自国信长天蓝桥杯官方蓝皮书例程,按照自己的习惯进行了补充和修改 蓝桥杯单片机第七届省赛-模拟风扇控制系统 Notes1:按键按下后在某些情况下给一定的缓冲时间 Notes2 ...

  5. 蓝桥杯大赛青少年创意编程 第十一届 省赛 C++组试题 第1题 双面打印

    /* 蓝桥杯大赛青少年创意编程 第十一届 省赛 C++组试题 第1题 双面打印 题目描述在2020年这个漫长的寒假里,虽然小蓝和他的同学们都在家里,但依旧通过网课的方式坚持学习,而老师们也依旧会布置作 ...

  6. 蓝桥杯嵌入式第七届省赛——“模拟液位检测告警系统”旧板标准库

    一.赛题分析 模拟液位检测告警系统,涉及到KEY.ADC.EEPROM.LED.USART.LCD等模块.本届赛题相对简单,各个模块均可在往期文章中找到配置方法和编写说明.如: 蓝桥杯嵌入式--第六届 ...

  7. 蓝桥杯嵌入式——第七届省赛-模拟液位检测告警系统

    第七届省赛-模拟液位检测告警系统 目录 第七届省赛-模拟液位检测告警系统 一.赛题分析 二.代码 一.赛题分析 这一届和上一届也就是第六届一样,没有涉及到定时器得PWM输出和输入捕获.主要得赛题难度是 ...

  8. 暴力优化解法+哈希解法——2016年第七届蓝桥杯省赛b组第八题 四平方和

    Problem describe 四平方和定理,又称为拉格朗日定理: 每个正整数都可以表示为至多4个正整数的平方和. 如果把0包括进去,就正好可以表示为4个数的平方和. 比如: 5 = 0^2 + 0 ...

  9. 蓝桥杯java第七届决赛第四题--路径之谜

    路径之谜小明冒充X星球的骑士,进入了一个奇怪的城堡.城堡里边什么都没有,只有方形石头铺成的地面.假设城堡地面是 n x n 个方格.[如图1.png]所示.按习俗,骑士要从西北角走到东南角.可以横向或 ...

  10. 蓝桥杯java第七届决赛第三题--打靶

    打靶小明参加X星球的打靶比赛.比赛使用电子感应计分系统.其中有一局,小明得了96分.这局小明共打了6发子弹,没有脱靶.但望远镜看过去,只有3个弹孔.显然,有些子弹准确地穿过了前边的弹孔.不同环数得分是 ...

最新文章

  1. TemplateBuilder
  2. 瑞丽噪声与信噪比的关系_演出扩声系统的噪声与接地
  3. 从宝马与京东携手,透视汽车后市场变革
  4. java实验四 集合与函数式编程实验
  5. python是如何实现进程池和线程池的_进程、线程、线程池和协程如何理解?
  6. Python 循环删除指定文件夹下所有的.longtian类型文件
  7. html div float center,跨浏览器实现float:center
  8. php 微盘系统教程,新版微盘API接口调用方法
  9. 从俄罗斯方块,迈向强化学习大门
  10. C++实现RPG小游戏(彩色版)
  11. 永洪BI还能这样玩?3招让用户权限管理不再繁琐
  12. win10系统迁移后系统重装_Win10技巧:Windows 10系统迁移方法!
  13. 【多模态】《Visual7W: Grounded Question Answering in Images》论文阅读笔记
  14. 机器人学与OROCOS-KDL(一)简介
  15. 基于近似计算的同态加密方案CKKS17----实现库介绍
  16. 服务器使用CDN加速的优劣势分析
  17. 10、私网与公网的转换---NAT网络地址转换技术
  18. 手动档科目三考试过程
  19. 微信分享服务器,微信分享的链接会被腾讯后台先访问
  20. ORA-1652 无法扩展TEMP表空间

热门文章

  1. pbs 作业管理命令
  2. BZOJ4241历史研究题解
  3. bzoj 3561: DZY Loves Math VI
  4. ActiveMQ之Topic
  5. LeetCode Factorial Trailing Zeroes (阶乘后缀零)
  6. 作用域public,private,protected,以及不写时的区别
  7. 常用http状态码说明,status
  8. [分享]Java 线程池的原理与实现
  9. 基于BERT进行商品标题实体识别,很详细~
  10. 【过拟合】防止模型过拟合的必备方法!