#include "closing.h"
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define all(x) x.begin(),x.end()
#define pb(x) push_back(x)
#define mp(x,y) make_pair(x,y)
#define vf first
#define vs second
int max_score(int n, int x, int y, ll k,vector<int> u, vector<int> v, vector<int> w){
ll weight[n];
memset(weight,0,sizeof weight);
for(int i = 0; i < n - 1; i++){
if(u[i] > v[i]){
swap(u[i] , v[i]);
}
weight[u[i]] = w[i];
}
for(int i = 0; i < n-1; i++){
w[i] = weight[i];
}
ll cur = 0;
int ans = 0;
int cur_w[n];
for(int i = x; i >= 0; i--){
memset(cur_w,0,sizeof cur_w);
for(int j = y; j < n; j++){
ll rem = k;
ll cur = 0;
for(int tp = x; tp >= i; tp--){
rem -= cur;
cur_w[tp] = cur;
if(tp > 0){
cur += w[tp-1];
}
}
cur = 0;
for(int tp = y; tp <= j; tp++){
rem -= cur;
cur_w[tp] = cur;
cur += w[tp];
}
if(rem >= 0){
int res = (x - i) + (j - y) + 2;
// cout << res << ' ';
int left = x + 1 , right = y - 1;
ll cur_l = w[x] , cur_r = w[y-1];
while(rem >= 0 && left < n && right >= 0){
if(left < n && cur_l - cur_w[left] < cur_r - cur_w[right]){
if(rem - (max(0LL,cur_l - cur_w[left])) >= 0){
rem -= (max(0LL,cur_l - cur_w[left]));
res++;
left++;
cur_l += w[left-1];
}
else break;
}
else {
if(rem - max(0LL, cur_r - cur_w[right]) >= 0){
rem -= max(0LL, cur_r - cur_w[right]);
res++;
right--;
cur_r += w[right];
}
else break;
}
}
// cout << i << ' ' << j << ' ' << res << ' ' << left << ' ' << right << "\n";
ans = max(ans , res);
}
}
}
return ans;
}
Compilation message
closing.cpp: In function 'int max_score(int, int, int, long long int, std::vector<int>, std::vector<int>, std::vector<int>)':
closing.cpp:25:8: warning: unused variable 'cur' [-Wunused-variable]
25 | ll cur = 0;
| ^~~
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
0 ms |
344 KB |
1st lines differ - on the 1st token, expected: '6', found: '4' |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Execution timed out |
1028 ms |
10828 KB |
Time limit exceeded |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
348 KB |
Output is correct |
2 |
Correct |
0 ms |
348 KB |
Output is correct |
3 |
Correct |
0 ms |
348 KB |
Output is correct |
4 |
Incorrect |
1 ms |
348 KB |
1st lines differ - on the 1st token, expected: '34', found: '27' |
5 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
348 KB |
Output is correct |
2 |
Correct |
0 ms |
348 KB |
Output is correct |
3 |
Correct |
0 ms |
348 KB |
Output is correct |
4 |
Incorrect |
1 ms |
348 KB |
1st lines differ - on the 1st token, expected: '34', found: '27' |
5 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
348 KB |
Output is correct |
2 |
Correct |
0 ms |
348 KB |
Output is correct |
3 |
Correct |
0 ms |
348 KB |
Output is correct |
4 |
Incorrect |
1 ms |
348 KB |
1st lines differ - on the 1st token, expected: '34', found: '27' |
5 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
0 ms |
344 KB |
1st lines differ - on the 1st token, expected: '6', found: '4' |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
0 ms |
344 KB |
1st lines differ - on the 1st token, expected: '6', found: '4' |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
0 ms |
344 KB |
1st lines differ - on the 1st token, expected: '6', found: '4' |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
0 ms |
344 KB |
1st lines differ - on the 1st token, expected: '6', found: '4' |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
0 ms |
344 KB |
1st lines differ - on the 1st token, expected: '6', found: '4' |
2 |
Halted |
0 ms |
0 KB |
- |