На c++ дан массив, состоящий из nn элементов. требуется добавить в него число x на позицию p. при этом все элементы с позиций в диапазоне [p; n]должны сдвинуться на элемент вправо. формат входных данных в первой строке входных данных дается число nn (1≤n≤100). в следующей строке даны n чисел, каждое из которых по модулю не превосходит 10 в 9 степени. на третьей строке число xx (также по модулю не превосходящее 10 в 9 степени) и число p (1≤p≤n+1). все числа во входных данных целые. формат выходных данных требуется вывести обновленную последовательность, хранимую в массиве.
using namespace std;
int main() {
int n, x, p;
cin >> n;
int a[n+1];
for (int i=0; i<n; i++){
cin >> a[i];
}
cin >> x >> p;
for (int i=n; i>p-1; i--){
a[i] = a[i-1];
}
a[p-1] = x;
for (int i=0; i<n+1; i++){
cout << a[i] << " ";
}
cout << "\n";
return 0;
}
Пример:
5
4 2 9 7 3
8 4
4 2 9 8 7 3