CSES - Datatähti 2017 alku - Results
Submission details
Task:Maalarit
Sender:fergusq
Submission time:2016-10-03 23:00:31 +0300
Language:C++
Status:COMPILE ERROR

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:17:35: error: parameter declared 'auto'
  sort(t.begin(), t.end(), [](auto i, auto j){ return i>j; });
                                   ^
input/code.cpp:17:43: error: parameter declared 'auto'
  sort(t.begin(), t.end(), [](auto i, auto j){ return i>j; });
                                           ^
input/code.cpp: In lambda function:
input/code.cpp:17:54: error: 'i' was not declared in this scope
  sort(t.begin(), t.end(), [](auto i, auto j){ return i>j; });
                                                      ^
input/code.cpp:17:56: error: 'j' was not declared in this scope
  sort(t.begin(), t.end(), [](auto i, auto j){ return i>j; });
                                                        ^
In file included from /usr/include/c++/4.8/algorithm:62:0,
                 from input/code.cpp:3:
/usr/include/c++/4.8/bits/stl_algo.h: In instantiation of 'void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Comp...

Code

#include <iostream>
#include <utility>
#include <algorithm>
#include <vector>
using namespace std;
int main() {
int n;
cin >> n;
vector<pair<int,int>> t;
for (int i = 0; i < n; i++) {
int k;
cin >> k;
t.push_back(make_pair(k,i));
}
sort(t.begin(), t.end(), [](auto i, auto j){ return i>j; });
int m[999];
m[0]=0;
int M=0;
int T[n];
for (auto &p : t) {
int k = p.first;
int i = p.second;
int mM = 0;
while (mM < M) {
if (i != 0 && T[i-1] == mM) { mM++; continue; }
if (i != n-1 && T[i+1] == mM) { mM++; continue; }
break;
}
if (mM == M) M++;
T[i] = mM;
if (m[mM] < k) m[mM] = k;
}
int s = 0;
for (int i = 0; i <= M; i++) s += m[i];
cout << s << " " << M << endl;
for (int i = 0; i < n; i++) cout << T[i] << " ";
cout << endl;
}