Если цепочки две, то выводится ближайшая. Пойдет?
//t1.txt должен быть в папке с программой
//Pascal
var
f: text;
numValue, Counts, n, c, t, i: integer;
begin
assign(f, 't1.txt');
reset(f);
Counts := 0;
c := 0;
while not eof(f) do
begin
readln(f, n);
if (c = 0) or (n = t) then
c := c + 1
else
c := 1;
t := n;
if c > Counts then
begin
Counts := c;
numValue := n
end
end;
close(f);
assign(f, 't2.txt');
rewrite(f);
writeln('Длина цепочки: ', Counts);
for i := 1 to Counts do
writeln(f, numValue);
close(f)
end.
Вот все варианты решения
значения идут по порядку
"0001110101"
"0001111101"
"0010101101"
"0010110101"
"0010111101"
"0011010101"
"0011011101"
"0011101101"
"0011110101"
"0011111101"
"0101010101"
"0101011101"
"0101101101"
"0101110101"
"0101111101"
"0110101101"
"0110110101"
"0110111101"
"0111010101"
"0111011101"
"0111101101"
"0111110101"
"0111111101"
"1010101101"
"1010110101"
"1010111101"
"1011010101"
"1011011101"
"1011101101"
"1011110101"
"1011111101"
"1101010101"
"1101011101"
"1101101101"
"1101110101"
"1101111101"
"1110101101"
"1110110101"
"1110111101"
"1111010101"
"1111011101"
"1111101101"
"1111110101"
"1111111101"
//Ruby 22
for i in 0..2**10-1
s = ("000000000000000000000000000000" + i.to_s(2))[-10..-1]
next if s[-2]=="1"
a=[]
s.each_char { |c| a<<(c=="1") }
f = true
for k in 0..a.size-3
f = (f and (not a[k] or a[k+1] or a[k+2]))
end
p s if f
end
Program z1;
var a,b,c,p:double;
begin
readln(a);readln(b);
c:=sqrt(a*a+b*b);
p:=a+b+c;
writeln(p);
readln
end.
Предположим, что Великобритания (откровенный), тогда получается проект Китая.
Следовательно Китай (скрытный). Проверим, Францию на (осторожный).
Все верно, следовательно
Великобритания = Откровенный
Китай = Скрытый
Франция = Осторожный