Submission #97262

#TimeUsernameProblemLanguageResultExecution timeMemory
97262MohamedAhmed0Zalmoxis (BOI18_zalmoxis)C++14
100 / 100
961 ms54464 KiB
#include <bits/stdc++.h> using namespace std ; const int MAX = 2e6 + 10 ; int idx ; vector<int>v ; int n , k ; vector<int>ans ; set<int>s ; void solve(int node , int level) { if(level == v[idx]) { idx++; ans.push_back(node) ; return ; } solve(node * 2 , level - 1) ; if(idx == v.size() || level <= v[idx]) { s.insert(node * 2 + 1) ; return ; } solve(node * 2 + 1 , level - 1) ; } void print_solution(int node , int level) { if(binary_search(ans.begin() , ans.end() , node)) { cout<<level<<" "; return ; } print_solution(node * 2 , level - 1) ; print_solution(node * 2 + 1 , level - 1) ; } int main() { scanf("%d %d" , &n , &k) ; for(int i = 0 ; i < n ; ++i) { int x ; scanf("%d" , &x) ; v.push_back(x) ; } solve(1 , 30) ; while(s.size() < k) { int now = *s.begin() ; s.erase(now) ; s.insert(now * 2) ; s.insert(now * 2 + 1) ; } for(auto &i : s) ans.push_back(i) ; sort(ans.begin() , ans.end()) ; return print_solution(1 , 30) , 0; }

Compilation message (stderr)

zalmoxis.cpp: In function 'void solve(int, int)':
zalmoxis.cpp:22:12: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     if(idx == v.size() || level <= v[idx])
        ~~~~^~~~~~~~~~~
zalmoxis.cpp: In function 'int main()':
zalmoxis.cpp:51:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     while(s.size() < k)
           ~~~~~~~~~^~~
zalmoxis.cpp:43:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d %d" , &n , &k) ;
     ~~~~~^~~~~~~~~~~~~~~~~~~
zalmoxis.cpp:47:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d" , &x) ;
         ~~~~~^~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...