#include <iostream>
#include <vector>
#include <cstdint>
#include <algorithm>
using namespace std;
void input(vector<int32_t>& vec) {
for (size_t i = 0; i < vec.size(); ++i) {
int32_t val;
cout << i << ":";
cin >> val;
vec[i] = val;
}
}
int main() {
uint32_t variant = 0;
vector<int32_t> mas(0);
cout << "Start program" << endl;
do {
cout << "Menu" << endl;
cout << " 1. Array input" << endl;
cout << " 2. Array output" << endl;
cout << " 3. Sort asc" << endl;
cout << " 4. Sort desc" << endl;
cout << " 5. Exit" << endl;
cout << "-->";
cin >> variant;
switch (variant) {
case 1: {
cout << "Enter array size: ";
uint32_t size;
cin >> size;
mas.resize(size);
input(mas);
break;
}
case 2:
cout << "Array: ";
for(auto item: mas) {
cout << item << " ";
}
cout << endl;
break;
case 3:
sort(mas.begin(), mas.end());
cout << "Array sorted!" << endl;
break;
case 4:
sort(mas.begin(), mas.end(), greater<int32_t>());
cout << "Array sorted!" << endl;
break;
case 5:
break;
default:
cout << "Invalid option!" << endl;
break;
}
} while (variant != 5);
// your code goes here
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8Y3N0ZGludD4KI2luY2x1ZGUgPGFsZ29yaXRobT4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnZvaWQgaW5wdXQodmVjdG9yPGludDMyX3Q+JiB2ZWMpIHsKCWZvciAoc2l6ZV90IGkgPSAwOyBpIDwgdmVjLnNpemUoKTsgKytpKSB7CgkJaW50MzJfdCB2YWw7CgkJY291dCA8PCBpIDw8ICI6IjsKCQljaW4gPj4gdmFsOwoJCXZlY1tpXSA9IHZhbDsKCX0KfQoKaW50IG1haW4oKSB7Cgl1aW50MzJfdCB2YXJpYW50ID0gMDsKCXZlY3RvcjxpbnQzMl90PiBtYXMoMCk7CgkKCWNvdXQgPDwgIlN0YXJ0IHByb2dyYW0iIDw8IGVuZGw7CgkKCWRvIHsKCQljb3V0IDw8ICJNZW51IiA8PCBlbmRsOwoJCWNvdXQgPDwgIiAgMS4gQXJyYXkgaW5wdXQiIDw8IGVuZGw7CgkJY291dCA8PCAiICAyLiBBcnJheSBvdXRwdXQiIDw8IGVuZGw7CgkJY291dCA8PCAiICAzLiBTb3J0IGFzYyIgPDwgZW5kbDsKCQljb3V0IDw8ICIgIDQuIFNvcnQgZGVzYyIgPDwgZW5kbDsKCQljb3V0IDw8ICIgIDUuIEV4aXQiIDw8IGVuZGw7CgkJY291dCA8PCAiLS0+IjsKCQljaW4gPj4gdmFyaWFudDsKCQlzd2l0Y2ggKHZhcmlhbnQpIHsKCQljYXNlIDE6IHsKCQkJY291dCA8PCAiRW50ZXIgYXJyYXkgc2l6ZTogIjsKCQkJdWludDMyX3Qgc2l6ZTsKCQkJY2luID4+IHNpemU7CgkJCW1hcy5yZXNpemUoc2l6ZSk7CgkJCWlucHV0KG1hcyk7CgkJCWJyZWFrOwoJCX0KCQljYXNlIDI6CgkJCWNvdXQgPDwgIkFycmF5OiAiOwoJCQlmb3IoYXV0byBpdGVtOiBtYXMpIHsKCQkJCWNvdXQgPDwgaXRlbSA8PCAiICI7CgkJCX0KCQkJY291dCA8PCBlbmRsOwoJCQlicmVhazsKCQljYXNlIDM6CgkJCXNvcnQobWFzLmJlZ2luKCksIG1hcy5lbmQoKSk7CgkJCWNvdXQgPDwgIkFycmF5IHNvcnRlZCEiIDw8IGVuZGw7CgkJCWJyZWFrOwoJCWNhc2UgNDoKCQkJc29ydChtYXMuYmVnaW4oKSwgbWFzLmVuZCgpLCBncmVhdGVyPGludDMyX3Q+KCkpOwoJCQljb3V0IDw8ICJBcnJheSBzb3J0ZWQhIiA8PCBlbmRsOwoJCQlicmVhazsKCQljYXNlIDU6CgkJCWJyZWFrOwoJCWRlZmF1bHQ6CgkJCWNvdXQgPDwgIkludmFsaWQgb3B0aW9uISIgPDwgZW5kbDsKCQkJYnJlYWs7CgkJfQoJfSB3aGlsZSAodmFyaWFudCAhPSA1KTsKCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCXJldHVybiAwOwp9