记录编号 |
31784 |
评测结果 |
AAAAAAAAAAA |
题目名称 |
[USACO Feb08] 麻烦的聚餐 |
最终得分 |
100 |
用户昵称 |
QhelDIV |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.026 s |
提交时间 |
2011-11-03 20:51:05 |
内存使用 |
0.38 MiB |
显示代码纯文本
#include<fstream>
using namespace std;
ifstream fin("egroup.in");
ofstream fout("egroup.out");
int N,A[30002],m1,m2,m3,M1,M2;
int Max(int o1,int o2,int o3)
{
int m=0;
if(o1>m)
m=o1;
if(o2>m)
m=o2;
if(o3>m)
m=o3;
return m;
}
int main()
{
int i,j,temp;
fin>>N;
for(i=1;i<=N;i++)
{
fin>>A[i];
if(A[i]==1)
m1++;
if(A[i]==2)
m2=(m1>m2?m1:m2) +1;
if(A[i]==3)
{
m3=(m3>(m1>m2?m1:m2)?m3:(m1>m2?m1:m2))+1;
}
}
M1=N-Max(m1,m2,m3);
m1=0;m2=0;m3=0;
for(i=1,j=N;i<=j;i++,j--)
{
temp=A[i];
A[i]=A[j];
A[j]=temp;
}
for(i=1;i<=N;i++)
{
if(A[i]==1)
m1++;
if(A[i]==2)
m2=(m1>m2?m1:m2) +1;
if(A[i]==3)
{
m3=(m3>(m1>m2?m1:m2)?m3:(m1>m2?m1:m2))+1;
}
}
M2=N-Max(m1,m2,m3);
fout<<(M1>M2?M2:M1);
fin.close();
fout.close();
return 0;
}