Submission #356781

# Submission time Handle Problem Language Result Execution time Memory
356781 2021-01-23T16:44:06 Z YJU Sparklers (JOI17_sparklers) C++14
0 / 100
135 ms 31980 KB
#include<bits/stdc++.h>
#pragma GCC optimize("unroll-loops,no-stack-protector")
using namespace std;
typedef long long ll;
typedef long double ld;
typedef pair<ll,ll> pll;
const ll MOD=1e9+7;
const ll MOD2=998244353;
const ll N=2e3+5;
const ld pi=acos(-1);
const ll INF=(1LL<<60);
#define SQ(i) ((i)*(i))
#define REP(i,n) for(ll i=0;i<n;i++)
#define REP1(i,n) for(ll i=1;i<=n;i++)
#define pb push_back
#define mp make_pair
#define X first
#define Y second
#define setp setprecision
#define lwb lower_bound
#define SZ(_a) (ll)_a.size()

ll n,JOI,t,dp[N][N],x[N],u[N];

bool ck(ll k){
	memset(dp,0,sizeof(dp));
	REP1(i,n)x[i]=u[i]-2*k*t*i;
	dp[JOI][JOI]=1;
	for(int L=1;L<=n;L++){
		for(int i=1;i+L-1<=n;i++){
			if(i+L<=n&&x[i]>=x[i+L])dp[i][i+L]|=dp[i][i+L-1];
			if(i-1>=1&&x[i-1]>=x[i+L-1])dp[i-1][i+L-1]|=dp[i][i+L-1];
		}
	}
	return dp[1][n];
}

int main(){
	ios_base::sync_with_stdio(0);cin.tie(0);
	cin>>n>>JOI>>t;
	REP1(i,n)cin>>u[i];
	ll l=0,r=(1LL<<30);
	while(r-l>1){
		ll mid=(l+r)>>1;
		if(ck(mid)){
			r=mid;
		}else{
			l=mid;
		}
	}
	cout<<r<<"\n";
	return 0;
}

# Verdict Execution time Memory Grader output
1 Correct 134 ms 31872 KB Output is correct
2 Correct 135 ms 31852 KB Output is correct
3 Correct 131 ms 31980 KB Output is correct
4 Correct 131 ms 31980 KB Output is correct
5 Correct 133 ms 31980 KB Output is correct
6 Correct 130 ms 31852 KB Output is correct
7 Correct 131 ms 31980 KB Output is correct
8 Correct 133 ms 31980 KB Output is correct
9 Correct 130 ms 31852 KB Output is correct
10 Correct 133 ms 31872 KB Output is correct
11 Correct 132 ms 31872 KB Output is correct
12 Correct 132 ms 31852 KB Output is correct
13 Correct 130 ms 31852 KB Output is correct
14 Correct 131 ms 31980 KB Output is correct
15 Correct 133 ms 31980 KB Output is correct
16 Correct 134 ms 31872 KB Output is correct
17 Correct 131 ms 31852 KB Output is correct
18 Correct 133 ms 31852 KB Output is correct
19 Incorrect 131 ms 31980 KB Output isn't correct
20 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 134 ms 31872 KB Output is correct
2 Correct 135 ms 31852 KB Output is correct
3 Correct 131 ms 31980 KB Output is correct
4 Correct 131 ms 31980 KB Output is correct
5 Correct 133 ms 31980 KB Output is correct
6 Correct 130 ms 31852 KB Output is correct
7 Correct 131 ms 31980 KB Output is correct
8 Correct 133 ms 31980 KB Output is correct
9 Correct 130 ms 31852 KB Output is correct
10 Correct 133 ms 31872 KB Output is correct
11 Correct 132 ms 31872 KB Output is correct
12 Correct 132 ms 31852 KB Output is correct
13 Correct 130 ms 31852 KB Output is correct
14 Correct 131 ms 31980 KB Output is correct
15 Correct 133 ms 31980 KB Output is correct
16 Correct 134 ms 31872 KB Output is correct
17 Correct 131 ms 31852 KB Output is correct
18 Correct 133 ms 31852 KB Output is correct
19 Incorrect 131 ms 31980 KB Output isn't correct
20 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 134 ms 31872 KB Output is correct
2 Correct 135 ms 31852 KB Output is correct
3 Correct 131 ms 31980 KB Output is correct
4 Correct 131 ms 31980 KB Output is correct
5 Correct 133 ms 31980 KB Output is correct
6 Correct 130 ms 31852 KB Output is correct
7 Correct 131 ms 31980 KB Output is correct
8 Correct 133 ms 31980 KB Output is correct
9 Correct 130 ms 31852 KB Output is correct
10 Correct 133 ms 31872 KB Output is correct
11 Correct 132 ms 31872 KB Output is correct
12 Correct 132 ms 31852 KB Output is correct
13 Correct 130 ms 31852 KB Output is correct
14 Correct 131 ms 31980 KB Output is correct
15 Correct 133 ms 31980 KB Output is correct
16 Correct 134 ms 31872 KB Output is correct
17 Correct 131 ms 31852 KB Output is correct
18 Correct 133 ms 31852 KB Output is correct
19 Incorrect 131 ms 31980 KB Output isn't correct
20 Halted 0 ms 0 KB -