<em>// PascalABC.NET 3.2, сборка 1385 от 14.02.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var a:=ArrRandom(20,1,12); a.Println;
var b:=ArrRandom(20,1,12); b.Println;
Writeln('Число пар: ',a.Zip(b,(x,y)->x=y).Count(x->x))
end.
<u>Пример</u>
7 8 3 2 4 4 2 6 1 3 5 10 7 10 12 10 3 11 2 1
2 12 4 10 9 8 2 3 12 11 2 1 4 10 8 10 9 9 11 4
Число пар: 3
var
x, n:integer;
begin
write('n = ');
readln(n);
x := n mod 10;
n := n div 10;
while n > 0 do
begin
if n mod 10 < x then
begin
writeln('Последовательность неупорядочена по возрастанию');
readln;
Exit;
end;
x := n mod 10;
n := n div 10;
end;
writeln('Последовательность упорядочена по возрастанию');
readln;
end.
Ну? Понятно, 16 рядов, 32 места в каждом... продали ОДИН БИЛЕТ В ВОСЬМОМ РЯДУ, номер 8 ... и что ??? Какой вопрос задачи?;)
X : = 4 + 8 * 3 ; - то есть x=4+8*3 = 4+24 = 28
y : = ( x mod 10 ) + 15; // mod 10 - остаток от деления на 10. y = (28 mod 10)+15 = 8+15 = 23
<span>x : = ( y div 10 ) + 3 // div - целочисленное деление, (y div 10) + 3 = (28 div 10) + 3 = 2+3 = 5
Сумма переменных равна 23+5 = 28</span>
3^5=243 комбинации. До 300 не хватает. Увеличиваем на один цвет.
4^5=1024 комбинации
Ответ: Достаточно 4 различных цветов лампочек.