답안 #144055

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
144055 2019-08-15T21:19:54 Z The_Wolfpack Money (IZhO17_money) C++14
컴파일 오류
0 ms 0 KB
#include <bits/stdc++.h>
using namespace std;
const int NMAX=1e6+8;

int fen[NMAX];
void add(int x)
{
    for(;x<NMAX;x+=(x&-x)) fen[x]++;
}
int gget(int x)
{
    int res=0;
    for(;x>0;x-=(x&-x)) res+=fen[x];
    return res;
}
int n,a[NMAX];
int main()
{
    ios_base::sync_with_stdio(false);
    cin>>n;
    int res=1;
    vector<int>tmp;
    for(int i=1;i<=n;i++)
    {
        cin>>a[i];
        if(!tmp.size())
        {
            tmp.push_back(a[i]);
            continue;
        }
        else
        {
            if(a[i]<tmp.back() || gget(a[i]-1)>gget(tmp[0])
            {
                res++;
                for(int x:tmp) add(x);
                tmp.clear();
            }
            tmp.push_back(a[i]);
        }
    }
    cout<<res<<endl;
    return 0;
}

Compilation message

money.cpp: In function 'int main()':
money.cpp:33:16: warning: init-statement in selection statements only available with -std=c++1z or -std=gnu++1z
             if(a[i]<tmp.back() || gget(a[i]-1)>gget(tmp[0])
                ^
money.cpp:34:13: error: expected ';' before '{' token
             {
             ^
money.cpp:39:32: error: expected ')' before ';' token
             tmp.push_back(a[i]);
                                ^
money.cpp:39:26: error: could not convert 'tmp.std::vector<int>::push_back(a[i])' from 'void' to 'bool'
             tmp.push_back(a[i]);
             ~~~~~~~~~~~~~^~~~~~