function [A, checksum] = analyza_simulace(M,N)

% shrnuje vysledky pro ulohu o uklizecce a dverich
%
% M....vstupni matice vygenerovanych nahodnych posloupnosti
% (generuje to funkce posloupnosti_simulace)
% N....pocet cisel
% A....vystupni matice se souhrnem vysledku:
%  - prvni radek jsou mozne delky posloupnosti
%  - druhy radek jsou absolutni cetnosti
%  - treti jsou relativni cetnosti

%letma kontrola
maxdelka = (N^2+N)/2;
if maxdelka ~= size(M,2)
    error('Neco je spatne!')
end

%priprava vystupu
A = N:maxdelka; %mozne delky posloupnosti
A = [A; zeros(1,size(A,2)); zeros(1,size(A,2))]; %alokace pro vysledky

MM = [M zeros(size(M,1),1)]; %mala finta jak se vyhnout problemum s prikazem FIND

%absolutni cetnosti
for cnt = 1:size(MM,1)
    delka = find(MM(cnt,:)==0,1,'first') - 1;
    ind = find( A(1,:)==delka );
    A(2,ind) = A(2,ind) + 1;
end

%kontrola
checksum = sum(A(2,:)); % celkovy pocet pripadu
if checksum ~= size(M,1)
    error('!!!')
end

% relativni cetnosti
A(3,:) = A(2,:)./ checksum;