This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#define endl '\n'
#define ll long long
using namespace std;
ll power(ll a, ll b) { ll ans = 1; while (b) { if (b % 2) ans *= a; a *= a; b /= 2; } return ans; }
int const maxin = 1e6+6;
ll const mod = 1e9+7;
int arr[maxin];
int a,b;
vector<int>v(1e7 + 6 , -1);
int meow = 0;
int cnt = 0;
int xx , yy;
int xc = 0 , yc = 0;
void solve(int l , int r , int num)
{
    if(cnt == a + b)
    {
        return;
    }
    int indx = (l+r)/2;
    if(meow == a)
    {
        int g = a+b - cnt;
        int g2;
        int g3;
        for(int i=0;i<100;i++)
        {
            if(power(2 , i) > g)
                break;
            g2 = power(2,i);
            g3 = i;
        }
        xx = num - g3;
        yy = num - g3 - 1;
        yc = (g - g2)*2;
        xc = g - yc;
        cnt = a+b;
        return;
    }
    if(num < arr[meow])
    {
        v[indx] = num;
        return;
        cnt++;
    }
    if(num == arr[meow])
    {
        v[indx] = arr[meow];
        meow++;
        cnt++;
        return;
    }
    solve(l , indx , num-1);
    solve(indx , r , num-1);
}
int main()
{
    ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
    cin>>a>>b;
    for(int i=0;i<a;i++)
    {
        cin>>arr[i];
    }
    solve(0 , 1e7+5 , 30);
    for(int i=0;i<1e7+6;i++)
    {
        if(v[i] != -1)
            cout<<v[i]<<" ";
    }
    for(int i=0;i<xc;i++)
    {
        cout<<xx<<" ";
    }
    for(int i=0;i<yc;i++)
    {
        cout<<yy<<" ";
    }
    return 0;
}
Compilation message (stderr)
zalmoxis.cpp: In function 'void solve(int, int, int)':
zalmoxis.cpp:34:18: warning: 'g3' may be used uninitialized in this function [-Wmaybe-uninitialized]
   34 |         xx = num - g3;
      |              ~~~~^~~~
zalmoxis.cpp:36:17: warning: 'g2' may be used uninitialized in this function [-Wmaybe-uninitialized]
   36 |         yc = (g - g2)*2;
      |              ~~~^~~~~| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... |