#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
template <typename T>
void input(vector<T>& X, int n) {
X.resize(n);
for (int i = 0; i < n; i++) {
cin >> X[i];
}
}
template <typename T>
void findminmax(const vector<T>& X, int& minI, int& maxI) {
minI = 0;
maxI = 0;
for (int i = 1; i < X.size(); i++) {
if (X[i] > X[maxI]) {
maxI = i;
}
if (X[i] < X[minI]) {
minI = i;
}
}
}
template <typename T>
vector<T> create(const vector<T>& X, int left, int right) {
if (left > right)
swap(left, right);
vector<T> vec(X.begin() + left + 1, X.begin() + right);
return vec;
}
template <typename T>
void print(const vector<T>& X) {
for (int i = 0; i < X.size(); i++) {
cout << X[i] << " ";
}
cout << endl;
}
int main() {
vector<int> X;
int n;
cout << "vvedite razmer ";
cin >> n;
input(X, n);
int minI, maxI;
findminmax(X, minI, maxI);
int left = min(minI, maxI);
int right = max(minI, maxI);
vector<int> result = create(X, left, right);
cout << "sam massiv" << endl;
print(result);
cout << "razmerchikk ";
cout << result.size() << endl;
cout << "capacity result ";
cout << result.capacity() << endl;
return 0;
}