Теория информации Вероятность появления события в одном испытании равна 0.4. Производится 3 таких испытания. ДСВ*число появления заданного события. Составить закон исчисления
// PascalABC.NET 3.0, сборка 1156 от 30.01.2016 begin var n,m:integer; Read(n,m); var a:array[,] of integer; SetLength(a,n,m); for var i:=0 to n-1 do for var j:=0 to m-1 do Read(a[i,j]); var k,r:integer; Read(k,r); var p:=0; //будущий результат foreach var x:integer in a do begin var s:=0; var q:=x; var k1:=0; while q<>0 do begin s:=s+(q mod 10); q:=q div 10; Inc(k1) end; if (k1=k) and (s mod r = 0) then Inc(p) end; Writeln(p) end.
Предлагаю для начала рассматривать только значения вида (x.. xor x..) Очевидно, скажем, если (x1 xor x2) = 0, то (x3 xor x4) = 1 Так что достаточно посчитать количество цепочек значений xor'ов, где нет двух стоящих подряд 0. Всего пять значений, так что можно посчитать все вручную. Например, составить дерево. Получилось 13 цепочек. Т.к. каждому значению .. xor .. соответствует пара возможных значений x (01 и 10), каждая цепочка будет соответствовать 2^5 = 32 возможным значениям x1..10. Соответственно, ответ: 13 * 32 = 416
begin
var n,m:integer;
Read(n,m);
var a:array[,] of integer;
SetLength(a,n,m);
for var i:=0 to n-1 do
for var j:=0 to m-1 do Read(a[i,j]);
var k,r:integer;
Read(k,r);
var p:=0; //будущий результат
foreach var x:integer in a do begin
var s:=0; var q:=x; var k1:=0;
while q<>0 do begin
s:=s+(q mod 10); q:=q div 10; Inc(k1)
end;
if (k1=k) and (s mod r = 0) then Inc(p)
end;
Writeln(p)
end.
Тестовое решение:
5 5
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
2 3
5
Очевидно, скажем, если (x1 xor x2) = 0, то (x3 xor x4) = 1
Так что достаточно посчитать количество цепочек значений xor'ов, где нет двух стоящих подряд 0. Всего пять значений, так что можно посчитать все вручную. Например, составить дерево.
Получилось 13 цепочек. Т.к. каждому значению .. xor .. соответствует пара возможных значений x (01 и 10), каждая цепочка будет соответствовать 2^5 = 32 возможным значениям x1..10.
Соответственно, ответ: 13 * 32 = 416