Submission #750263

#TimeUsernameProblemLanguageResultExecution timeMemory
750263MuntherCarrotZalmoxis (BOI18_zalmoxis)C++14
30 / 100
138 ms59248 KiB
#include <bits/stdc++.h>
using namespace std;
#define ll long long
// #define int long long
#define endl '\n'
#define all(x) x.begin(),x.end()
const ll MOD = 1e9 + 7, SZ = 1e5 + 10, INF = 1e18;
int n, k;
int arr[1000069];
vector<int> ans;
int i = 0;
void solve(int x){
    if(ans.size() >= n){
        if(ans.size() < n + k){
            ans.push_back((n + k - ans.size() == 1 ? x : x - 1));
            if(ans.size() < n + k)
                solve(x - 1);
        }
        return;
    }
    if(arr[i] > x){
        ans.push_back(x);
    }
    else if(arr[i] < x){
        solve(x - 1);
        solve(x - 1);
        return;
    }
    else{
        ans.push_back(x);
        i++;
    }
}
int32_t main(){
    ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
    cin >> n >> k;
    for(int i=0;i<n;i++)
        cin >> arr[i];
    solve(30);
    for(int i : ans)
        cout << i << ' ';
    return 0;
}

Compilation message (stderr)

zalmoxis.cpp: In function 'void solve(int)':
zalmoxis.cpp:13:19: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   13 |     if(ans.size() >= n){
      |        ~~~~~~~~~~~^~~~
zalmoxis.cpp:14:23: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   14 |         if(ans.size() < n + k){
      |            ~~~~~~~~~~~^~~~~~~
zalmoxis.cpp:16:27: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   16 |             if(ans.size() < n + k)
      |                ~~~~~~~~~~~^~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...