比赛 |
“Asm.Def战记之夏威夷”杯 |
评测结果 |
WWWWWWWWWW |
题目名称 |
Asm.Def的验证码 |
最终得分 |
0 |
用户昵称 |
sxysxy |
运行时间 |
0.030 s |
代码语言 |
C++ |
内存使用 |
0.70 MiB |
提交时间 |
2015-11-06 10:12:11 |
显示代码纯文本
#include <cstring>
#include <cstdio>
#include <cstdlib>
#include <string>
#include <vector>
#include <map>
#include <algorithm>
#include <iostream>
#include <queue>
using namespace std;
//#define dbg
#ifndef dbg
void set_file()
{
freopen("asm_code.in", "r", stdin);
freopen("asm_code.out", "w", stdout);
}
#endif
int N;
#define MAXN (100001)
#define AC_MOD (1000000007)
int ms[MAXN];
int CB = 0;
int CW = 0;
long long tot_line = 0;
long long jiejia(long long n)
{
return ((1+n)*n/2)%AC_MOD;
}
void rd()
{
int i;
scanf("%d", &N);
for(i = 1; i <= N; i++)
{
scanf("%d", ms+i);
if(ms[i] == 1)CB++;
else CW++;
}
}
void solve()
{
tot_line = (jiejia(CB-1)+jiejia(CW-1))%AC_MOD;
//cout << CB << ' ' << CW << ' ' << tot_line << endl;
int i,j;
j = 1;
for(i = 2; i <= N ;i++)
{
if(ms[i] != ms[i-1])
{
tot_line -= jiejia(j-1);
j = 1;
}
else j++;
}
cout << tot_line%AC_MOD << endl;
}
int main()
{
#ifndef dbg
set_file();
#endif
rd();
solve();
return 0;
}