WA#1 91pts求调
查看原帖
WA#1 91pts求调
746969
happy_guest楼主2024/5/22 22:39
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n,m,s,t,minn=LLONG_MAX,a[110],dp[1000010],d[110];
bool flag[1000010];
int main(){
//	freopen("input.txt","r",stdin);
	cin>>n>>s>>t>>m;
	for(ll i=1;i<=m;i++)
		cin>>a[i];
	sort(a+1,a+1+m);
	for(ll i=1;i<=m;i++)
		dp[i]=(a[i]-a[i-1])%2520;
	for(ll i=1;i<=m;i++){
		a[i]=a[i-1]+dp[i];
		flag[a[i]]=1;
	}
	memset(dp,0x3f3f,sizeof(dp));
	dp[0]=0;
	for(ll i=1;i<=a[m]+t;i++)
		for(ll j=s;j<=t;j++)
			if(i>=j)
				dp[i]=min(dp[i],dp[i-j])+flag[i];
	for(ll i=a[m];i<=a[m]+t;i++)
		minn=min(minn,dp[i]);
	cout<<minn;
	return 0;
}
2024/5/22 22:39
加载中...