ly940327 2011-10-13 04:30:00
点我顶贴
收藏
删除
#include<stdio.h>
int main(){
int map[101]={0};
int f[101]={0};
int l;
scanf("%d",&l);
int s,t,min=999,m,i,j,q;
scanf("%d%d%d",&s,&t,&m);
for(i=0;i<m;i++){
scanf("%d",&q);map[q]=1;}
for(i=1;i<=l;i++)
{
for(j=i-t;j<=i-s;j++)
if(j>=0)
if(f[j]+map[j]<min)
min=f[j]+map[j];
f[i]=min;
min=999;
}
printf("%d\n",f[l]);
return 0;}
本来想先得30分。为什么没有输出呢?
求大牛
