제출 #341120

#제출 시각아이디문제언어결과실행 시간메모리
341120Dilshod_ImomovBigger segments (IZhO19_segments)C++17
13 / 100
1558 ms15872 KiB
# include <bits/stdc++.h> # define speed ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0) # define int long long # define fi first # define se second using namespace std; const int N = 5e3 + 7; const int mod = 1e9 + 7; int a[N], sum[N], ans, cnt, n; map < int, int > used[N], dp[N]; int solve( int pos, int sm ) { if ( pos == n + 1 ) { return 0; } if ( used[pos][sm] ) { return dp[pos][sm]; } used[pos][sm] = 1; int s = 0, mx = 0; for ( int i = pos; i <= n; i++ ) { s += a[i]; if ( s >= sm ) { mx = max( mx, 1 + solve( i + 1, s ) ); } } dp[pos][sm] = mx; return mx; } int32_t main() { speed; cin >> n; for ( int i = 1; i <= n; i++ ) { cin >> a[i]; sum[i] = sum[i - 1] + a[i]; } cout << solve( 1, 0 ); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...