算法——找规律

本质

这类题型的本质就是发现规律从而找到更简单的算法

例题

  • 暴力解法那就是从前往后或者从后往前枚举所有可能的情况,算法复杂度较高。

  • 首先要结合正难则反的思路,然后把s->t的最小操作次数转换成t->s的最小操作次数(当然*2和-1要换成/2和+1),我们可以分情况讨论,t的上一个数变成t有如下几种情况:

    可以发现,如果t是奇数t的上一个数就是t+1;如果t是偶数的话,t的上一个数可以是t+1也可以是t/2,不过,加x个1再除以2等价于个除以2再加y个1而,y<x,因此偶数的第三种情况的操作次数一定大于前两种情况,所以如果t是偶数的话就除以2。
    不过后来发现以上假设都是基于t > s的情况,如果t < s 有些推论就不成立,比如偶数中的第三种类型最前面不一定有*2。故此,我们补充完整的情况:


  • 少量的箭引爆气球就是尽量在重叠区射箭,一次性引爆多个气球。对于没有和其他气球重叠起来的气球,需要单独的箭来引爆这里有一个问题,就是假设一个气球分别和两个气球重叠,应该向那个区域射箭?其实无论向哪儿射箭,最后没被射的气球都成了单独的气球,仍旧需要箭射爆。所以只要是重叠区以及单独的气球都需要射箭。

  • 我们要找的就是重叠区和单独气球的数量。

相关推荐
BD4SXV11 分钟前
线性二次调节器(Linear Quadratic Regulator,LQR)的无限时域最优控制求解与黎卡提方程
算法·自动化
ST——Jess19 分钟前
2026年度传统文化数字化与命理科技(Ethno-tech)行业趋势研究报告:专业级数智工作台的技术壁垒与评测标准
人工智能·科技·算法·架构
Matrix_1142 分钟前
第13篇:非线性位移场——漩涡、鱼眼、水波纹与球面化
图像处理·算法
金牌归来发现妻女流落街头44 分钟前
【LeetCode 第207题】
算法·leetcode·拓扑·领接表
熬夜敲代码的猫1 小时前
AVL树(C++详解版)
数据结构·c++·算法
-To be number.wan1 小时前
算法日记 | STL-MAP
c++·算法
cjp5601 小时前
015. UG 二次开发,拉伸草图生成实体类,高级草图类封装
算法
Eric 辰东2 小时前
【C 语言程序的编译和链接】详解编译链接过程
c语言·笔记·算法·学习方法
迈巴赫车主2 小时前
蓝桥杯21247弹跳鞋java
java·开发语言·数据结构·算法·职场和发展·蓝桥杯
jghhh012 小时前
基于 Weiler-Atherton 算法的多边形裁剪程序实现
算法