제출 #103039

#제출 시각아이디문제언어결과실행 시간메모리
103039rzbt중앙값 배열 (balkan11_medians)C++14
100 / 100
35 ms2424 KiB
#include <bits/stdc++.h>
#define mp make_pair
#define pb push_back
#define F first
#define S second
#define all(x) x.begin(),x.end()
#define MAXN 200005
using namespace std;

int n,q;


bool dodat[MAXN];
int prvi=1,poslednji,prosli;

void dp(){
    while(dodat[prvi])prvi++;
    dodat[prvi]=true;
    printf("%d ",prvi);
}
void dk(){
    while(dodat[poslednji])poslednji--;
    dodat[poslednji]=true;
    printf("%d ",poslednji);
}


int main()
{
    int n;
    scanf("%d", &n);
    poslednji=n+n-1;
    scanf("%d",&prosli);
    dodat[prosli]=true;
    printf("%d ",prosli);
    for(int i=2;i<=n;i++){
        int t;

        scanf("%d", &t);
        if(t==prosli){
            dp();
            dk();
        }else if(prosli<t){
            if(dodat[t])dk();
            else{
                dodat[t]=true;
                printf("%d ",t);
            }
            dk();
        }else{
            if(dodat[t])dp();
            else{
                dodat[t]=true;
                printf("%d ",t);
            }
            dp();
        }



        prosli=t;
    }


    return 0;
}

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

medians.cpp: In function 'int main()':
medians.cpp:31:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d", &n);
     ~~~~~^~~~~~~~~~
medians.cpp:33:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d",&prosli);
     ~~~~~^~~~~~~~~~~~~~
medians.cpp:39:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d", &t);
         ~~~~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...