#include <iostream>
#include <algorithm>
#include <iterator>
int main() {
int vector[] = {1, 2, 3, -45, 324, -55, 23, -34, 6};
std::size_t const size = sizeof (vector) / sizeof (*vector);
int result[size];
result[0] = vector[0];
for (std::size_t i = 1; i < size; ++i) {
result[i] = std::min(result[i - 1], vector[i]);
}
std::copy(&result[0], &result[0] + size, std::ostream_iterator<int>(std::cout, " "));
std::cout << std::endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8YWxnb3JpdGhtPgojaW5jbHVkZSA8aXRlcmF0b3I+CgoKaW50IG1haW4oKSB7CiAgIGludCB2ZWN0b3JbXSA9IHsxLCAyLCAzLCAtNDUsIDMyNCwgLTU1LCAyMywgLTM0LCA2fTsKCiAgIHN0ZDo6c2l6ZV90IGNvbnN0IHNpemUgPSBzaXplb2YgKHZlY3RvcikgLyBzaXplb2YgKCp2ZWN0b3IpOwogICBpbnQgcmVzdWx0W3NpemVdOwogICByZXN1bHRbMF0gPSB2ZWN0b3JbMF07CiAgIGZvciAoc3RkOjpzaXplX3QgaSA9IDE7IGkgPCBzaXplOyArK2kpIHsKICAgICAgcmVzdWx0W2ldID0gc3RkOjptaW4ocmVzdWx0W2kgLSAxXSwgdmVjdG9yW2ldKTsKICAgfQoKICAgc3RkOjpjb3B5KCZyZXN1bHRbMF0sICZyZXN1bHRbMF0gKyBzaXplLCBzdGQ6Om9zdHJlYW1faXRlcmF0b3I8aW50PihzdGQ6OmNvdXQsICIgIikpOwogICBzdGQ6OmNvdXQgPDwgc3RkOjplbmRsOwp9