zoj3872

来源:互联网 发布:新媒体软件 编辑:程序博客网 时间:2024/06/10 04:18
#include <iostream>#include <algorithm>#include <cstring>#include <cstdio>using namespace std;const int M  = 100005;int num[M];long long dp[M];long long  check(int i){    long long s = 0;   for(int k = i -1; k >= 1; k--){        if(num[i] != num[k])         s += num[i];        else            break;   }   return s;}int main(){   int t, n;   long long  sum;   scanf("%d", &t);   while(t--){    sum = 0;    scanf("%d", &n);     for(int i = 1; i <= n; i++){        scanf("%d", &num[i]);     }     memset(dp, 0,sizeof(dp));     dp[1] = num[1];     for(int i = 2; i <= n; i++){          dp[i] += dp[i-1];          dp[i] += num[i];            dp[i] += check(i);     }     for(int i = 1; i <= n; i++){        sum += dp[i];     }     printf("%ld\n", sum);   }    return 0;}

0 0
原创粉丝点击