【前缀和】很久远的补题--H Traveling on the Axis(优秀的找规律思维)

2024-02-07 20:38

本文主要是介绍【前缀和】很久远的补题--H Traveling on the Axis(优秀的找规律思维),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

做的太少,想的太多。

还有,从现在开始好好学习英语,口语更加重要。

总结一下就是:

【用脑子,认真罗列xxxx过程】

【具体些,写出来之后就好找规律了】

刷题其实不能少。不单单练习思维,很多别的东西,机试啊,各种能力啊,你没点真才实学别人怎么可能要你。尽我所能吧,比得过自己就好,一直都是这个样子的呀。(而且在学校还能够好好刷题的机会不多了---(啊能在上课时间好好写作业的机会我感觉也亦不多了。。))

[0x01].题意 (copy)

[0,n]中每0.5处设置一个红绿灯,0表示红灯,1表示绿灯,如果在4.5处有红灯,要从4到5,就要等1s,给出初始的红绿灯状态,每1s会改变状态,即由红灯变成绿灯,或绿灯变成红灯,然后计算图中表达式。

那么我们定性分析一下,若你手里的是101。所有的0可以当成是2,1就是1

那么对于101先来写一下吧:先换成121

121 最开始,我们知道是1,那么(0,1)=1 all=1

过了一秒之后,变成了212,还是一秒,那么(0,2)=1+1=2  (1,2)=0+1=1  all+=3   all=4

这样又是121 还是一秒 那么(0,3)+1  (1,3)+1 (2,3)+1

????这些个03哪里来的.......

[0x02].定性分析

【思维误差】【这里就是,按照条例:】

<!--

还记得一起打的那场网络赛里zj数树上的点很快就好了,因为他是【枚举起点和终点】而我和ziyi就瞎胡数 数了个半天,。。乱死了

这个题也是这样。开始看了一篇误解题解,直到----

(先只是看文字)这样列出来的话,非常清晰明了。

需要一点脑子和条理性想出最佳【罗列】办法啊。。。不仅直观,还有利于找规律啊!!!

对于容易乱掉的题不得不说是个不错的办法。(然后就懂了101为什么是12,因为从(1,2)这里开始的时候是2----这里又需要一点理解力,就是 关键就是红色的灯只是等了2秒,原来的不变。。)(参考洛谷---这种正负正负的,哪怕是洛谷那个开灯关灯,有限的状态转化时间可以压缩压缩压缩。。)(还想说搞懂的话一定要全部搞懂啊。)

哪怕再又乱了,就写个mov  ans就好啊。。或者罗列下想法,画好一个流转的图。流转。。

-->

[0x03].进一步找规律

讲道理.... 一条线往后面走下来好了咯... 每个地方也 是稍微记录一下子 ojbk(怎么才算合理?不要写错了呀)

好了,我现在感觉这个题思维很是不错。……下面的东西,我们就参考思想最优秀的这位爷。

https://blog.csdn.net/qq_39826163/article/details/82744035

公式是i*(n-i+1)*f[i],如果是11这样f[i+1]就是2,如果是01这样f[i+1]就是1

若露端倪,可要想办法解决。

有点像tree-permutation那个题,其实写出来真的(

(0,1)   (0,1)(1,2)

所以(0,1)竖着出现次数是1(i)横着是n-i(注意到这里是个数所以+1)

【具体些】

------------------------------

若s[i-1]=0时,说明初始时需要再等1s,所以之后的答案都需要加上n-i+1,如果f[i]=2,那么以i开始的区间的答案需要减去n-i+1。

隐隐约约觉得是某些地方多算了导致的....  但是为什么呢?(待解决)

[0x04].others

题意非常容易会理解错  不觉得吗

还记得现场赛的时候我还在去练车,煞有介事地分析了一番,我tm

 

这篇关于【前缀和】很久远的补题--H Traveling on the Axis(优秀的找规律思维)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/688862

相关文章

计蒜客 Half-consecutive Numbers 暴力打表找规律

The numbers 11, 33, 66, 1010, 1515, 2121, 2828, 3636, 4545 and t_i=\frac{1}{2}i(i+1)t​i​​=​2​​1​​i(i+1), are called half-consecutive. For given NN, find the smallest rr which is no smaller than NN

hdu 6198 dfs枚举找规律+矩阵乘法

number number number Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Problem Description We define a sequence  F : ⋅   F0=0,F1=1 ; ⋅   Fn=Fn

【LeetCode热题100】前缀和

这篇博客共记录了8道前缀和算法相关的题目,分别是:【模版】前缀和、【模版】二维前缀和、寻找数组的中心下标、除自身以外数组的乘积、和为K的子数组、和可被K整除的子数组、连续数组、矩阵区域和。 #include <iostream>#include <vector>using namespace std;int main() {//1. 读取数据int n = 0, q = 0;ci

颠覆你的开发模式:敏捷思维带来的无限可能

敏捷软件开发作为现代软件工程的重要方法论,强调快速响应变化和持续交付价值。通过灵活的开发模式和高效的团队协作,敏捷方法在应对动态变化和不确定性方面表现出色。本文将结合学习和分析,探讨系统变化对敏捷开发的影响、业务与技术的对齐以及敏捷方法如何在产品开发过程中处理持续变化和迭代。 系统变化对敏捷软件开发的影响 在敏捷软件开发中,系统变化的管理至关重要。系统变化可以是需求的改变、技术的升级、

如何成为一个优秀的测试工程师

链接地址:http://blog.csdn.net/KerryZhu/article/details/5250504 我一直在想,如何将自己的测试团队打造成世界一流的团队?流程、测试自动化、创新、扁平式管理、国际标准制定、测试社区贡献、…… 但首先一点是明确的,就是要将每一个测试工程师打造成优秀的测试工程师,优秀的团队必须由优秀的成员构成。所以,先讨论“如何成为一个优秀的测试工程师”,

前缀和 — 利用前缀信息解决子数组问题

【前缀和的核心思想是预先处理数组来快速计算任意子数组的和,基本上用于数组和序列问题。】 前缀和算法具体步骤 构造前缀和数组: 给定一个数组nums,其前缀和数组prex定义为prex[i]表示为数组nums从起始位置到第i个位置的元素累加和。构建前缀和公式: p r e x [ i ] = n u m s [ i ] ( i = = 0 ) p r e x [ i ] = p r e x

CF#284 (Div. 2) C.(几何规律)

题目链接:http://codeforces.com/contest/499/problem/C 解题思路: 把两个点的坐标分别带入方程组,如果最后两个值相乘为负,即异号,计数器++。其中有一个有趣的现象,从A到B的最短步数,可以变化为求A和B之间夹了多少条直线,那么最后只要求出直线数,即可求出最小步数。 如果一条直线夹在A和B中间,那么把A和B的坐标带入后,所得值相乘一定为负。数据很

HDU2524(规律推导)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2524 解题思路: 暴力推出矩阵,以n = 2 , m = 4为例: 1 3  6  10 3 9 18 30 可以发现第一行和第一列都是有规律的,彼此相差2、3、4·····,其他元素为相应行第一个元素乘以第一列元素的积。预处理之后,我们O(1)就可以输出g[n][m]的值。 另外,

开放式蓝牙耳机哪个品牌好用?盘点五款超优秀的开放式耳机!

开放式蓝牙耳机现在挺受欢迎的,它们最大的好处就是不塞耳朵,戴着舒服,特别适合长时间佩戴。而且,这种耳机能让你在听音乐的同时,还能听到周围的环境声,这样在外面运动或者骑车的时候就更安全。音质方面,现在的开放式耳机也做得越来越好,有些高端款式还有特别的技术来减少漏音,保护你的隐私。但是现在市场上的开放式耳机品牌太多了,很多人不知道怎么选?为了帮助您在众多选项中做出选择,我根据个人经验挑选了一些表现良好

0906作业+思维导图梳理

一、作业: 1、创捷一个类似于qq登录的界面 1)源代码 #include "widget.h"#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget){ui->setupUi(this);//QPushbutton:登录、退出this->join = new QP