T1

1

先考虑只有n的时候怎么求。。。。。。。。。。。。

First【x】表示x处的数,在他之前最先出现的是哪里。

Dp[i]表示到i的时候,他的所有子区间的和;

没有出现过。。

Dp1是i前面包括i的子区间的和

Dp[x]=dp[x-1]+dp1[x];

第一次出现的位置为r

Dp[x]=dp[x-1]+dp1[x];

考虑长度小于等于n的序列。

Point 30

当k==2

用同样的方式求一个dp[2*n];

找规律

等差数列

一共有k-2项 公差是d

D=i-first[i];

推到3.。。。。。。。。。。。。。。。只求出dp1首项

2*n之后i%n相同的是等差,并且公差一样.

%n==1***是dp1【z*n+1】最后一项是((k-2-1)*d+x+x)*(k-2)/2;

全部评论

相关推荐

努力的小明a:项目看着很眼熟,施磊老师吧,我也学的这个😋我当时是把rpc框架做成了一个分布式网盘,这是一个项目,然后muduo库做成集群即时通讯,又用QT做了个交互的客户端,这样又一个项目,然后一个轻量redis,一个CAD,总共四个项目,投了三个月就今天2月份一个小厂Qt offer,然后后面想开了,Qt啥的都能干,这个月get了个北京大厂的offer,做java后端,人生就是这么魔幻,现在就在去北京入职的路上
点赞 评论 收藏
分享
05-19 16:41
复旦大学 Python
ynq2126:我一直觉得现在考算法题没啥意义 真要选拔人才不如把公司实际项目中遇到的问题当成一系列场景题抛给求职者答 这才是能检测能力的东西
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务