program Chernovik;
var a: integer;
begin
write ('Введите трехзначное число: ');
readln (a);
if a > ((a mod 10) * (a div 100) * (a div 10 mod 10))
then write ((a mod 10) * (a div 100) * (a div 10 mod 10), ' < ',a)
else write ((a mod 10) * (a div 100) * (a div 10 mod 10),' >= ',a)
end.
Объяснение:
a mod 10 - последняя цифра трёхзначного числа
a div 100 - первая цифра трёхзначного числа
a div 10 mod 10 - средняя цифра трёхзначного числа
div - целочисленное деление
mod - остаток от целочисленного деления
Если будете сдавать в тестирующей системе, то вместо string, лучше использовать массив char - работает быстрее.
var n,i,k,p,mx,mxj: integer;
s: array[1..100000] of char;
begin
readln(n);
for i:=1 to n do read(s[i]);
k:=0; p:=0;
mx:=0; mxj:=0;
for i:=1 to n do
begin
if s[i]='G' then k:=k+1
else
begin
if p=1 then
begin
p:=0;
if s[i-1]='G' then
if (k>mxj) then mxj:=k;
k:=0;
end
else
begin
if k>0 then p:=1;
if k>mx then mx:=k;
end;
end;
end;
if mx>mxj then k:=mx+1
else k:=mxj+1;
if k=1 then k:=0;
writeln(k);
end.