Поделитесь своими знаниями, ответьте на вопрос:
Язык Python 3 Наибольшая возрастающая подпоследовательность У вас есть массив чисел длиною "N". Нужно найти следующую длину наибольшей возрастающей подпоследовательности. Ниже приведены несколько примеров [1, 3, 5, 4, 7] => 3 [2, 2, 2, 2, 2] => 1 Входные данные: (1 ≤ n ≤ 10000), где каждый элемент в массиве в промежутке (-10000 ≤ a[i] ≤ 10000) Выходные данные: Нужно найти следующую длину наибольшей возрастающей подпоследовательности.
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
int main()
{
int n, m, counter = 0;
cout << "Enter n: ";
cin >> n;
cout << "Enter m: ";
cin >> m;
if(n >= m)
{
cout << "Invalid value" << endl;
}
else
{
while(n <= m)
{
if(n % 4 == 0)
{
counter++;
}
n++;
}
}
cout << counter << " value" << (counter != 1 ? "s" : "") << endl;
cin.get();
return 0;
}
Вывод:
Enter n: 2000
Enter m: 2012
4 values
На Паскале:
program test;
var n, m, counter: integer;
begin
write('Enter n: ');
readln(n);
write('Enter m: ');
readln(m);
counter := 0;
while n <= m do
begin
if n mod 4=0 then
counter := counter + 1;
n := n + 1;
end;
writeln(counter, ' values');
readln();
end.