记录编号 |
72920 |
评测结果 |
AAAAAAAAAA |
题目名称 |
机房 |
最终得分 |
100 |
用户昵称 |
超级傲娇的AC酱 |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.123 s |
提交时间 |
2013-10-19 18:14:07 |
内存使用 |
2.62 MiB |
显示代码纯文本
#include<fstream>
#include<cmath>
#include<string.h>
using namespace std;
ifstream fi("orz.in");
ofstream fo("orz.out");
int main()
{
int orz1[2501]={0},orz2[2501]={0},i,j,x,n,m,F[2501];
fi>>n>>m;
memset(F,15,sizeof(F));F[0]=0;
for(i=1;i<=n;i++)
{
fi>>x;
(x==1)?(orz1[i]=orz1[i-1]+1,orz2[i]=orz2[i-1]):(orz2[i]=orz2[i-1]+1,orz1[i]=orz1[i-1]);
for(j=0;j<i;j++)
if(abs(orz1[i]-orz1[j]-(orz2[i]-orz2[j]))<=m||orz1[i]==orz1[j]||orz2[i]==orz2[j])
F[i]=min(F[i],F[j]+1);//加入后满足条件下更优???想到哪是哪。。。
}
fo<<F[n];
return 0;
}