bzoj4511: [Usaco2016 Jan]Subsequences Summing to Sevens
Posted invoid
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了bzoj4511: [Usaco2016 Jan]Subsequences Summing to Sevens相关的知识,希望对你有一定的参考价值。
前缀和.
设f[i]为前缀和%7=i的第一个点。那么答案就是max(i-f[s[i]%7])了。
#include<cstdio> #include<algorithm> #include<cstring> using namespace std; const int maxn = 50000 + 10; int a[maxn],s[maxn]; int f[10],n,ans; int main() { for(int i=1;i<7;i++) f[i]=-1; scanf("%d",&n); for(int i=1;i<=n;i++) { scanf("%d",&a[i]); s[i]=(s[i-1]+a[i])%7; if(f[s[i]]==-1) f[s[i]]=i; else { ans=max(ans,i-f[s[i]]); } } printf("%d\n",ans); }
以上是关于bzoj4511: [Usaco2016 Jan]Subsequences Summing to Sevens的主要内容,如果未能解决你的问题,请参考以下文章
bzoj4525: [Usaco2016 Jan]Angry Cows
bzoj4512: [Usaco2016 Jan] Build Gates
[BZOJ4506] [Usaco2016 Jan]Fort Moo(DP?)
bzoj4509Usaco2016 JanAngry Cows