случайно нашел тему...
а обычной трассировкой никто не пробовал? уровней-то не так много.
ща попробую...
Добавлено
нда... 30 минут на выбор метода, 30 минут на тестирование на скорость, 40 минут на кодирование, 10 минут на отладку. Результат - 7-ая строка. Хотя, для простенькой олимпиадной задачки уровня района слишком все-таки долго
Добавлено
а, собственно, текст:
Uses crt;
type
TAr=array[0..6] of byte;
const
ar:array[1..7] of word=($7,$01a,$0e0,$106,$320,$248,$218); {Kod po Treshkam v HEX}
ideal:TAr=(0,0,2,0,1,0,3); {Uslovie zadachi}
CLearAr:TAr=(0,0,0,0,0,0,0); {For Clearing}
var
i,j:word;
GetMas:TAr;
b:boolean;
procedure checkAr; {Proverka po vsem treshkam}
var
a,b,k:word;
begin
a:=ar[i] xor ar[j];
k:=0;
repeat
if a mod 2=1 then k:=k+1;
a:=a shr 1;
until a<1;
GetMas[k]:=getmas[k]+1;
end;
begin
for i:=1 to 7 do
begin
GetMas:=ClearAr;
for j:=1 to 7 do
if (i<>j) then CheckAr;
b:=false;
for j:=0 to 6 do
if GetMas[j]<>Ideal[j] then b:=true;
if b then Writeln('Line ',i,' is wrong.') else writeln('Line ',i,' is right');
end;
end.
а обычной трассировкой никто не пробовал? уровней-то не так много.
ща попробую...
Добавлено
нда... 30 минут на выбор метода, 30 минут на тестирование на скорость, 40 минут на кодирование, 10 минут на отладку. Результат - 7-ая строка. Хотя, для простенькой олимпиадной задачки уровня района слишком все-таки долго
Добавлено
а, собственно, текст:
Uses crt;
type
TAr=array[0..6] of byte;
const
ar:array[1..7] of word=($7,$01a,$0e0,$106,$320,$248,$218); {Kod po Treshkam v HEX}
ideal:TAr=(0,0,2,0,1,0,3); {Uslovie zadachi}
CLearAr:TAr=(0,0,0,0,0,0,0); {For Clearing}
var
i,j:word;
GetMas:TAr;
b:boolean;
procedure checkAr; {Proverka po vsem treshkam}
var
a,b,k:word;
begin
a:=ar[i] xor ar[j];
k:=0;
repeat
if a mod 2=1 then k:=k+1;
a:=a shr 1;
until a<1;
GetMas[k]:=getmas[k]+1;
end;
begin
for i:=1 to 7 do
begin
GetMas:=ClearAr;
for j:=1 to 7 do
if (i<>j) then CheckAr;
b:=false;
for j:=0 to 6 do
if GetMas[j]<>Ideal[j] then b:=true;
if b then Writeln('Line ',i,' is wrong.') else writeln('Line ',i,' is right');
end;
end.