Помогите, пожалуйста, с задачей на с++.
Удаление элемента
Удалите из массива элемент в индексом k. Обратите внимание, считывание и вывод массива уже написаны за вас, необходимо написать только фрагмент программы — само удаление элемента.
Входные данные
В первой строке задано натуральное число n (n≤100) и индекс k (0≤k
Примечание
Для того чтобы удалить из массива A последний элемент необходимо использовать инструкцию pop_back():
A.pop_back();
Размер массива уменьшится на единицу. Данная инструкция выдаст ошибку выполнения, если вызвать её на пустом векторе.
Приложения:
restIess:
надо еще?
да, если можно!!
метод erase() можно использовать?
предполагается, что здесь нужно правильно использовать функцию для вектора, так что не уверена. но попробовать стоит.
erase это метод для вектора, но тут в задании что-то про еще один метод для удаления написано
извините, не знала, начала изучать язык совсем недавно. вот думаю, что именно этот метод и нужно использовать, наверное.
Можно, пожалуйста, увидеть итоговый код? Никак не получается решить(
у меня самой эта задача осталась незаконченной, извините
Ответы
Ответ дал:
2
Ответ:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int n, k;
cin >> n >> k;
vector <int> A(n);
for (int i = 0; i < A.size(); i++) {
cin >> A[i];
}
A.erase(A.begin() + k);
for (int i = 0; i < A.size(); ++i) {
cout << A[i] << " ";
}
cout << endl;
return 0;
}
Объяснение:
Сам не ожидал найти решение в одну строку, удачи! :)
Вас заинтересует
2 года назад
2 года назад
3 года назад
3 года назад
8 лет назад
8 лет назад
9 лет назад