% trova la sequenza di stati piú probabile date tutte le osservazioni
function out=indiceprestazioneNodiag(row,P,C,dimensionebase)

 global Stati


states=hmmviterbi(row,P,C');
T=length(states);

normaRighe=zeros(length(P),1);

comeSiSplittanoGliStati=dispSplit(Stati);
comeSiSplittanoGliStati=comeSiSplittanoGliStati{2};
P2=P-diag(diag(P));
P2=normalizzaCol(P2')';

for i=1:length(P)
    
   for j=1:dimensionebase 
    
       senzazeri=find(comeSiSplittanoGliStati(j,:)~=0);
       senzazeri=comeSiSplittanoGliStati(j,senzazeri);
       riga(j)=  (sum(P2(i,senzazeri)));
   end
    %normaRighe(i)=norm(P(i,:));
    normaRighe(i)=norm(riga)^2;
end
    
indiceCosto=0;
for i=1:T

    
    
    indiceCosto=indiceCosto+normaRighe(states(i));
end
    indiceCosto=indiceCosto;
out=indiceCosto/(T-1);





