Младшему брату Вилли Дилли очень нравится кататься на новом лифте. Он катается на нём до тех пор, пока не побывает на каждом из этажей хотя бы по одному разу. После этого Дилли довольный возвращается домой.
Зная порядок, в котором Дилли нажимал на кнопки лифта, попробуйте определить общее количество этажей в доме Вилли и Дилли.
Входные данные
Первая строка входного файла INPUT.TXT содержит последовательность нажатий на кнопки лифта. Символ «1» означает, что была нажата первая кнопка, а символ «2» – что была нажата вторая кнопка. Символы «1» и «2» не разделены пробелами. Количество нажатий не превосходит 100. Гарантируется, что лифт никогда не опускался ниже первого и не поднимался выше последнего этажа.
Выходные данные
В выходной файл OUTPUT.TXT следует вывести одно число – количество этажей в доме Вили и Дилли.
Парочка примеров к задаче:
1) 11 ---> 3
2) 21212 ---> 2
3) 1221221221221 ---> 6
Вот код программы, который я сделал)
program N_296;
var i,j,k,n,m:longint;
S:string;
Begin
assign (input,'input.txt');
reset (input);
assign (output,'output.txt');
rewrite (output);
Read (S);
n:=1;
k:=1;
For j:=1 to length(S) do
Begin
n:=n+1;
If m=length(S) then break;
For i:=1 to length(S) do
Begin
If S[i]='1' then Begin
k:=k+1;
If k-1=length(S) then m:=i;
End
else Begin
k:=k-1;
If k-1=length(S) then m:=i;
End;
If k<=0 then Begin
k:=n;
break;
End;
End;
End;
Write (k);
End.
Добавлено через 1 мин.
Помогите найти ошибку или просто разъясните мне эту задачу)