问题标题: 酷町堂:4635 求和2

0
0
已解决
李显晨
李显晨
中级启示者
中级启示者

怎么写?求思路

李显晨在2021-04-14 20:49:48追加了内容

ding

李显晨在2021-04-15 18:05:36追加了内容

ding


0
已采纳
汪恺恒
汪恺恒
中级启示者
中级启示者

暴力枚举

枚举x y z可能的值

下标范围(满足条件1)

x : 1~n

y : x+1~n

z : y+1~n

枚举是判断是否满足条件,如果满足,按照公式计算即可

for(int x=1;x<=n;x++){
        for(int y=x+1;y<=n;y++){
            for(int z=y+1;z<=n;z++){
                if(y-x==z-y&&color[x]==color[z]){
                    ans=(ans+(x+z)*(a[x]+a[z]))%mod;
                }
            }
        }
    } 

注意,a数组要用long long 定义!

0
我要回答