#include <iostream>
#include <chrono>
#include <vector>
#include <algorithm>
#define maxn 200005
#define maxlog 20
#define INF 1000000010
#define LINF 1000000000000000005
#define endl '\n'
#define pb(x) push_back(x)
#define X first
#define Y second
#define control cout<<"passed"<<endl;
#pragma GCC optimize("O3" , "Ofast" , "unroll-loops" , "fast-math")
#pragma GCC target("avx2")
using namespace std;
std::chrono::high_resolution_clock::time_point startT, currT;
constexpr double TIME_MULT = 1;
double timePassed()
{
using namespace std::chrono;
currT = high_resolution_clock::now();
double time = duration_cast<duration<double>>(currT - startT).count();
return time * TIME_MULT;
}
int n , k;
int a[maxn];
void read()
{
cin >> n >> k;
for(int i = 0; i < n + k; i++)
cin >> a[i];
}
void solve()
{
vector <int> ans;
ans.resize(n);
int start = (n / 2) - 1;
for(int i = start; i <= start + k; i++)
{
int pom = a[i] + a[i + 1];
int l = 0 , r = n + k - 1;
int j = 0;
while(r > l && j < n / 2)
{
while(r > l && (a[l] + a[r]) > pom)
r--;
if(r > l && (a[l] + a[r]) == pom)
{
ans[j] = a[l];
ans[n - j - 1] = a[r];
j++;
}
l++;
}
if(n / 2 > j)
continue;
for(int e : ans)
cout << e << " ";
cout << endl;
break;
}
}
int main()
{
/**#ifdef ONLINE_JUDGE
freopen("taxi.in", "r", stdin);
freopen("taxi.out", "w", stdout);
#endif*/
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
startT = std::chrono::high_resolution_clock::now();
read();
solve();
return 0;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
344 KB |
Output is correct |
2 |
Correct |
1 ms |
352 KB |
Output is correct |
3 |
Correct |
1 ms |
360 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
4 ms |
872 KB |
Output is correct |
2 |
Correct |
30 ms |
4448 KB |
Output is correct |
3 |
Correct |
23 ms |
4548 KB |
Output is correct |
4 |
Correct |
23 ms |
4504 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
23 ms |
4444 KB |
Output is correct |
2 |
Correct |
26 ms |
4476 KB |
Output is correct |
3 |
Correct |
31 ms |
4436 KB |
Output is correct |
4 |
Correct |
24 ms |
4496 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
360 KB |
Output is correct |
2 |
Correct |
0 ms |
360 KB |
Output is correct |
3 |
Correct |
1 ms |
360 KB |
Output is correct |
4 |
Correct |
0 ms |
360 KB |
Output is correct |
5 |
Correct |
0 ms |
360 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
360 KB |
Output is correct |
2 |
Correct |
1 ms |
476 KB |
Output is correct |
3 |
Correct |
0 ms |
344 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
348 KB |
Output is correct |
2 |
Correct |
1 ms |
348 KB |
Output is correct |
3 |
Correct |
1 ms |
348 KB |
Output is correct |
4 |
Correct |
1 ms |
348 KB |
Output is correct |
5 |
Correct |
1 ms |
504 KB |
Output is correct |
6 |
Correct |
1 ms |
524 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
344 KB |
Output is correct |
2 |
Correct |
32 ms |
4500 KB |
Output is correct |
3 |
Correct |
22 ms |
4432 KB |
Output is correct |
4 |
Correct |
24 ms |
4436 KB |
Output is correct |
5 |
Correct |
27 ms |
4440 KB |
Output is correct |
6 |
Correct |
23 ms |
4436 KB |
Output is correct |
7 |
Correct |
26 ms |
4436 KB |
Output is correct |
8 |
Correct |
36 ms |
4432 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
348 KB |
Output is correct |
2 |
Correct |
293 ms |
4380 KB |
Output is correct |
3 |
Correct |
22 ms |
4468 KB |
Output is correct |
4 |
Correct |
92 ms |
4372 KB |
Output is correct |
5 |
Correct |
52 ms |
4416 KB |
Output is correct |
6 |
Correct |
23 ms |
4432 KB |
Output is correct |
7 |
Correct |
105 ms |
4356 KB |
Output is correct |
8 |
Correct |
91 ms |
4344 KB |
Output is correct |