제출 #130689

#제출 시각아이디문제언어결과실행 시간메모리
130689VardanyanZalmoxis (BOI18_zalmoxis)C++14
30 / 100
192 ms6460 KiB
#include <bits/stdc++.h>
using namespace std;
const int N = 1000*1000+5;
int a[N];
int main(){
    ios_base::sync_with_stdio(false);
    int n,k;
    cin>>n>>k;
    if(k!=1) assert(0);
    for(int i = 1;i<=n;i++) cin>>a[i];
    stack<pair<int,int> > st;
    for(int i = 1;i<=n;i++){
        if(!st.size()){
            st.push({a[i],i});
            continue;
        }
        st.push({a[i],i});
        while(st.size()>=2){
            pair<int,int> x = st.top();
            st.pop();
            pair<int,int> y = st.top();
            st.pop();
            if(x.first != y.first){
                st.push(y);
                st.push(x);
                break;
            }
            st.push({x.first+1,x.second});
        }
    }
    int mn = 1000*1000*1000+5;
    int id = 1;
    while(st.size()){
        int x = st.top().first;
        int y = st.top().second;
        if(x<mn){
            mn = x;
            id = y;
        }
        st.pop();
    }
 //   cout<<mn<<endl;
    bool f = false;
    for(int i = 1;i<=n;i++){
        cout<<a[i]<<" ";
        if(i == id){
            cout<<mn<<" ";
            f = true;
        }
    }
    return 0;
}

컴파일 시 표준 에러 (stderr) 메시지

zalmoxis.cpp: In function 'int main()':
zalmoxis.cpp:43:10: warning: variable 'f' set but not used [-Wunused-but-set-variable]
     bool f = false;
          ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...