/ Vijos / 讨论 / 过河 /

完全是按踩石子做的

昨晚试了三四次不过才发现是不踩石子...就很伤心...就很想一个人静静,下次一定要看题。
附:如果踩石子该怎么做
#include<iostream>
#include<cstring>
using namespace std;
long long a[101];int b[101];
int main()
{
memset(b,-1,sizeof(b));
long long n;
cin>>n;
b[0]=1;
int s,t,m,i,k,min,max=n+2,x;
cin>>s>>t>>m;
for(i=1;i<=m;i++)
cin>>a[i];
for(i=1;i<=m;i++)
{
min=i+1;
for(x=1;x<=i;x++)
if(a[i]-a[i-x]>=s&&a[i]-a[i-x]<=t&&b[i-x]>0)
if(b[i-x]<min)
min=b[i-x];
b[i]=min+1;
}
for(i=m;i>0;i--)
{
if(n-a[i]<=t)
if(b[i]<max)
max=b[i];
}
cout<<max-2;
return 0;
}

1 条评论

  • 1

信息

ID
1002
难度
7
分类
动态规划 点击显示
标签
递交数
23094
已通过
3961
通过率
17%
上传者