比赛 |
20120619 |
评测结果 |
C |
题目名称 |
FBI序列 |
最终得分 |
0 |
用户昵称 |
11111111 |
运行时间 |
0.000 s |
代码语言 |
C++ |
内存使用 |
0.00 MiB |
提交时间 |
2012-06-19 21:01:46 |
显示代码纯文本
#include<stdio.h>
#include<iostream>
#include<stdlib.h>
#include<fstream>
using namespace std;
int main()
{
ifstream fin("fbi.in");
ofstream fout("fbi.out");
char t[2010];
int f[2010]={0};
int b[2010]={0};
int i[2010]={0};
int j;
memset(f,0,sizeof(f));
memset(b,0,sizeof(b));
memset(i,0,sizeof(i));
for (int k=1;k<=2010;k++)
{
fin>>t[k];
if (t[k]!='F'&&t[k]!='B'&&t[k]!='I'&&t[k]!='O')
break;
}
for(j=0;t[j];j++)
{
if(t[j]=='F')
{
if(j)
f[j]=f[j-1]+1;
else
f[j]=1;
}
else
f[j]=f[j-1];
}
for(j=1;t[j];j++)
{
if(t[j]=='B')
b[j]=f[j-1]+b[j-1];
else
b[j]=b[j-1];
}
for(j=1;t[j];j++)
{
if(t[j]=='I')
i[j]=b[j-1]+i[j-1];
else
i[j]=i[j-1];
}
fout<<i[j-1];
fin.close();
fout.close();
return 0;
}