#include <cstdio> (31159)#include <iostream> using namespace std; int a[1000010]; long long deal(int begin,int end) { long long ans = 0; for(int i=begin+1;i<=end-1;i++) { int left = i-begin+1; int right = end - i; long long tmp = ((left)*right+left-1)*a[i]; ans+=tmp; ans%=10000007; } ans += (a[begin]+a[end])*(end-begin); return ans; } int main() { int n; cin>>n; long long ans=0; int beg =1; for(int i=1;i<=n;i++) { scanf("%d",&a[i]); if(a[i] == a[i-1]) { ans += deal(beg,i-1); ans = ans%10000007; beg = i; } } ans += deal(beg,n); ans = ans%10000007; cout<<ans; } // 64 位输出请用 printf("%lld")

相关推荐

双尔:你就写拥有ai开发经历,熟练运用提示词,优化ai,提高ai回答质量
点赞 评论 收藏
分享
用微笑面对困难:你出于礼貌叫了人一声大姐,大姐很欣慰,她真把你当老弟
点赞 评论 收藏
分享
11-07 15:54
门头沟学院 Java
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务