int size; // Размер массива int minimal_index = -1;
bool polynomial(int number){ std::string poly = std::to_string(number); // Преобразовываем int в string for(int i = 0; i < poly.length() / 2; i++){ if (poly[i] != poly[poly.length() - i - 1]){ return false; } } return true; }
int main() { std::cin >> size; // Вводим размер массива int array[size]; // Создаем массив for(int i = 0; i < size; i++){ std::cin >> array[i]; // Задаем i-тый элемент массива if (polynomial(array[i])){ // Если число полином if(minimal_index == -1){ minimal_index = i; } else if (array[i] < array[minimal_index]){ // Если новый полином меньше старого minimal_index = i; // То запоминаем новый индек } } }
// Ниже используем пузырьковую сортировку for(int i = minimal_index; i < size; i++){ for(int j = i; j < size; j++){ if(array[i] < array[j]){ int tmp = array[i]; array[i] = array[j]; array[j] = tmp; } } }
// Вывод массива for(int i = 0; i < size; i++){ std::cout << array[i] << " "; }
Const n=20; var i,k,m: integer; a: array[1..n] of integer; begin randomize; writeln('исходный массив:'); for i:=1 to n do begin a[i]:=random(-10,10); write(a[i],' '); end; writeln; k:=0; m:=0; for i:=n downto 1 do begin if a[i]>=0 then k:=k+1; if k=2 then begin m:=i; break; end; end; if m>0 then begin for i:=m to n-1 do a[i]:=a[i+1]; writeln('новый массив:');
for i:=1 to n-1 do write(a[i],' '); end else writeln('нет такого элемента'); end.
#include <sstream>
/*
*
* Пример входных данных:
8
20 10 121 10 40 50 20 30
*
*/
int size; // Размер массива
int minimal_index = -1;
bool polynomial(int number){
std::string poly = std::to_string(number); // Преобразовываем int в string
for(int i = 0; i < poly.length() / 2; i++){
if (poly[i] != poly[poly.length() - i - 1]){
return false;
}
}
return true;
}
int main() {
std::cin >> size; // Вводим размер массива
int array[size]; // Создаем массив
for(int i = 0; i < size; i++){
std::cin >> array[i]; // Задаем i-тый элемент массива
if (polynomial(array[i])){ // Если число полином
if(minimal_index == -1){
minimal_index = i;
} else if (array[i] < array[minimal_index]){ // Если новый полином меньше старого
minimal_index = i; // То запоминаем новый индек
}
}
}
// Ниже используем пузырьковую сортировку
for(int i = minimal_index; i < size; i++){
for(int j = i; j < size; j++){
if(array[i] < array[j]){
int tmp = array[i];
array[i] = array[j];
array[j] = tmp;
}
}
}
// Вывод массива
for(int i = 0; i < size; i++){
std::cout << array[i] << " ";
}
return 0;
}