比赛 |
“Asm.Def战记之夏威夷”杯 |
评测结果 |
AWWWWWWWWW |
题目名称 |
Asm.Def的验证码 |
最终得分 |
10 |
用户昵称 |
1azyReaper |
运行时间 |
0.030 s |
代码语言 |
C++ |
内存使用 |
1.84 MiB |
提交时间 |
2015-11-06 11:36:05 |
显示代码纯文本
#include <fstream>
#include <algorithm>
#include <cstdio>
#include <cstring>
#define ifs ifstream
#define ofs ofstream
#define MOD 1000000007
#define MAX 100010
using namespace std;
ifs fin("asm_code.in");
ofs fout("asm_code.out");
int n,a[MAX];
int l1,l2,r1,r2;
class node
{
public:
int x,y;
int num;
}g[MAX];
int main()
{
fin>>n;
for(int i=1;i<=n;i++)
fin>>a[i];
l1=l2=r1=r2=0;
int no=0,p=1,tot=0;
for(int i=1;i<=n;i++)
{
no=i+1;
while(a[i]==a[no])
no++;
tot++;
g[tot].x=p;
g[tot].y=no-1;
g[tot].num=no-p;
p=no;
i=no-1;
}
long long ans=0;
for(int i=1;i<=tot;i++)
{
if(i+3<=tot)
{
ans=(ans+(g[i].num*g[i+1].num%MOD)*(g[i+2].num*g[i+3].num%MOD))%MOD;
}
}
ans%=MOD;
fout<<ans<<endl;
return 0;
}