题目
文章平均质量分 54
特征向量
这个作者很懒,什么都没留下…
展开
-
2020 牛客暑假多校六 k-bag
简单思维题目:大致题意:给你一个n,一个k,接下来是一个长为n的串判断该串是否是 任意多个 1-k的排列 的一个子串思路:易知,若符合要求,则该串中必定存在一个位置x使得,对于任意整数y,都有yk+x到(y+1)k+x是一个1-k的排列len[i] 表示以i位置开始,多长距离内没有相同数字那么很好确定,x一定是前k个并且是len[0]+1其中的一个位置,即x=min(k,len[0]+1)ac代码#include <bits/stdc++.h>#define ll long原创 2020-07-31 11:29:12 · 122 阅读 · 0 评论 -
cf E. Are You Fired? 思维
原题链接题意:一个长度为n的序列,前(n+1)/1个数字给定,剩余数字均为x,求一个k,使任意k长的连续子串和大于0,不成立输出-1题解:首先可证k>n/2;当x>=0时,最后的一半都大于0,加上更优当x<0时,若情况成立,后面这部分必定要加上前面的某些数当x>=0时,直接求sum[n]当x<0时,k=n [1,n]k=n-1 [1,n-1] [2,n]k=n-2 [1,n-2] [2,n-1原创 2020-06-03 14:30:28 · 317 阅读 · 1 评论 -
E. K-periodic Garland dp
cf原题链接题目大意:给一个长度为n的01串,给定距离k,要求所有1之间的距离都为kdp[i][0]:表示前i个数据合法且第i个数据为0dp[i][1]:表示前i个数据合法且第i个数据为1dp[i][0]=min(dp[i-1][0],dp[i-1][1])+(a[i]==‘1’)因为dp[i][0]有两种情况,要么它是两个1之间(这种情况在计算dp[x][1]的时候会有判断,这里不用担心不符合要求),要么它后面一个1都没,无论哪种情况都可以直接从上一个的状态直接转移过来dp[i][1]=min原创 2020-05-24 14:37:45 · 235 阅读 · 0 评论