Ну если я ничего не путаю то решается это так берёшь лист тетради в клетку ставишь точку она будет нулевой (тип система отсчёта) теперь выполняем алгоритм из точки (0,0) мы оказались в точке (1,1) при этом мы путь до этой точке не чертили так как это не написано в программе теперь начинается цикл в котором мы уже будем чертить путь передвижения так как у нас это заданно в программе
и если я ничего не напутал получаем такой рисунок
#include <iostream>
#include <algorithm>
int main()
{
int arr[3];
for(int i = 0; i < 3; i++)
std::cin >> arr[i];
int max = arr[0];
for(auto& i : arr)
{
if(i > max && (i % 2 == 0))
max = i;
}
std::cout << "Результат = " << max << std::endl;
}
Мы ищем динамикой наибольшую подпоследовательность для отрезка [0; i] где гарантировано должен быть i-ый элемент. Потом выбираем из всех наибольшее число.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Введите строку: ");
string str = Console.ReadLine();// строка
Console.WriteLine("Введите подстроку: ");
string podstr = Console.ReadLine();//подстрока
var temp = str.Split().Where(i => i.Contains(podstr));
Console.WriteLine("Слова содержащие подстроку:");
foreach (var word in temp)
Console.Write(word + " ");
Console.ReadLine();
}
}
}