AGC041D Problem Scores

Link
注意到题目给的要求等价于\(\forall i\in[2,n],\sum\limits_{j=1}^iA_i>\sum\limits_{j=0}^{i-2}A_{n-j}\)
显然这个条件等价于\(\sum\limits_{j=1}^{\lceil\frac n2\rceil}A_i>\sum\limits_{j=0}^{\lceil\frac n2\rceil-2}A_{n-j}\)
考虑\(a=\nabla A\),上述条件等价于\(\sum\limits_{i=1}^nc_ia_i\),其中\(c_i\)是个系数,随便推推就有了。
同时\(a\)还需满足\(a_1>0\wedge\forall i\in[2,n]a_i\ge0\wedge\sum\limits_{i=1}^na_i\le n\)
即如果确定了\(a_2,\cdots,a_n\),那么\(a_1\)\(n-\sum\limits_{i=2}^n(c_i+1)a_i\)种取值。
dp一下就好了。

#include<cstdio>
int f[5007];
int min(int a,int b){return a<b? a:b;}
int main()
{
    int n,p,ans=0;
    scanf("%d%d",&n,&p),f[0]=1;
    for(int i=1;i<n;++i) for(int k=min(i,n-i+1),j=k;j<n;++j) (f[j]+=f[j-k])%=p;
    for(int i=0;i<n;++i) (ans+=1ll*(n-i)*f[i]%p)%=p;
    printf("%d",ans);
}

原文链接: https://www.cnblogs.com/cjoierShiina-Mashiro/p/12245993.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    AGC041D Problem Scores

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/326271

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月1日 下午3:45
下一篇 2023年3月1日 下午3:45

相关推荐