Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- struct MyVector{
- unsigned size, capacity; // Размер массива и выделенный размер памяти
- int *arr; // Указатель на первыый элемент массива в памяти
- };
- unsigned pref_size(unsigned n) { // Функция преобразования размера под ближайшую степень двойки
- /* paste your code here */
- }
- void read(MyVector &vec, unsigned n){
- vec.size = // Изменить размер
- vec.capacity = // Изменить размер зарезервированной памяти
- vec.arr = // Выделить память
- for (int i = 0; i < /*переменная*/; ++i) // Считать массив;
- }
- void print(MyVector &vec) {
- for (int i = 0; i < /*переменная*/; ++i) // Вывести массив
- }
- void push_back(MyVector &vec, int x) {
- if (vec.capacity > vec.size){ // Что делать, если место еще есть
- /* paste your code here */
- }
- vec.capacity = // Изменить размер памяти
- int *tmp_arr = // Выделить память под новый массив
- // Скопировать старый массив в новый
- // Вставить нужный элемент в конец и очистить ненужную мамять
- vec.arr = tmp_arr;
- }
- int pop_back(MyVector &vec) { // Удалить последний элемент массива
- // Удалить элемент
- if (vec.capacity >= vec.size * 2) { // Что делать если нужно изменить capasity
- // Изменяем размер
- // Перекопируем
- }
- }
- void del(MyVector& vec) { // Очищение памяти
- /* paste your code here */
- }
- void insert(MyVector &vec, int x, int k) {
- if (vec.capacity <= vec.size) { // Что делать если размер выделенной памяти меньше, чем нужно
- vec.capacity = // Изменить размер памяти
- int *tmp_arr = // Выделить память под новый массив
- // Вставить элемент
- // Скопировать старый массив в новый
- // И очистить память
- } else {
- // Вставить элемент
- // Изменить размер
- }
- return;
- }
- void erase(MyVector &vec, int k) { // Удалить элемент по индексу k
- // Удалить элемент
- if (vec.capacity >= vec.size * 2) { // Что делать если нужно изменить capasity
- // Изменяем размер
- // Перекопируем
- }
- }
- void print_size(MyVector &vec) {
- /* paste your code here */
- }
- int max(MyVector &vec) {
- /* paste your code here */
- }
- int min(MyVector &vec) {
- /* paste your code here */
- }
- long long sum(MyVector &vec) {
- /* paste your code here */
- }
- long double mean(MyVector &vec) {
- /* paste your code here */
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement