Поделитесь своими знаниями, ответьте на вопрос:
составить краткий алгоритм по этому коду using namespace std; int main() { int n; cin>>n; int arr[n+1]; int p{}; while(cin>>arr[++p]); int s{}; for(int i=1;i<=n;i++){ int x=arr[i]; int count=1; while(x!=-1){ count++; x=arr[x]; } s=max(count, s); } cout< return 0;
#include <algorithm>
#include <array>
#include <iostream>
int main()
{
std::array<int, 6> arr{ 13, 90, 99, 5, 40, 80 };
std::cout « "Enter a value to search for and replace with: ";
int search{};
int replace{};
std::cin » search » replace;
// Проверка пользовательского ввода должна быть здесь
// std::find() возвращает итератор, указывающий на найденный элемент (или на конец контейнера).
// Мы сохраним его в переменной, используя автоматический вывод типа итератора
auto found{ std::find(arr.begin(), arr.end(), search) };
// Алгоритмы, которые не нашли то, что искали, возвращают итератор, указывающий на конец контейнера.
// Мы можем получить доступ к этому итератору, используя метод end()
if (found == arr.end())
{
std::cout « "Could not find " « search « '\n';
}
else
{
// Перезаписываем найденный элемент
*found = replace;
}
for (int i : arr)
{
std::cout « i « ' ';
}
std::cout « '\n';
return 0;
}