Submission #827356

#TimeUsernameProblemLanguageResultExecution timeMemory
827356vjudge1Zalmoxis (BOI18_zalmoxis)C++17
30 / 100
142 ms60316 KiB
#include <bits/stdc++.h>
using namespace std;
//#define int long long
#define OYY 1000000005
#define mod 1000000007
#define mid (start+end)/2
#define faster ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
int dizi[1000005],n,k,i=0;
vector <int> cev;

inline void solve(int a){
    if(cev.size()==n+k){
        return ;
    }
    if(cev.size()>=n){
        if(n+k-cev.size()==1)cev.push_back(a);
        else cev.push_back(a-1);
        if(cev.size()<n+k)solve(a-1);
        return;
    }
    if(dizi[i]>a){
        cev.push_back(a);
        solve(a);
    }
    else if(dizi[i]==a){
        cev.push_back(a);
        i++;
    }
    else{
        solve(a-1),solve(a-1);
        return ;
    }
}
int main(){
    faster
    cin>>n>>k;
    for(int i=0;i<n;i++)cin>>dizi[i];
    solve(30);
    for (int i=0;i<cev.size();i++)cout<<cev[i]<<" ";
    cout<<'\n';
    return 0;
}

Compilation message (stderr)

zalmoxis.cpp: In function 'void solve(int)':
zalmoxis.cpp:12:18: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   12 |     if(cev.size()==n+k){
      |        ~~~~~~~~~~^~~~~
zalmoxis.cpp:15:18: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   15 |     if(cev.size()>=n){
      |        ~~~~~~~~~~^~~
zalmoxis.cpp:18:22: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   18 |         if(cev.size()<n+k)solve(a-1);
      |            ~~~~~~~~~~^~~~
zalmoxis.cpp: In function 'int main()':
zalmoxis.cpp:39:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   39 |     for (int i=0;i<cev.size();i++)cout<<cev[i]<<" ";
      |                  ~^~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...