test ( ) { int [ ] IDENT_0 = new int [ ] { test . utils . math . IDENT_1 . IDENT_2 . IDENT_3 . METHOD_0 ( ) , test . utils . math . IDENT_1 . IDENT_2 . IDENT_4 . METHOD_0 ( ) } ; int [ ] IDENT_5 = new int [ ] { test . utils . math . IDENT_1 . IDENT_6 . IDENT_7 . METHOD_0 ( ) , test . utils . math . IDENT_1 . IDENT_6 . IDENT_8 . METHOD_0 ( ) , test . utils . math . IDENT_1 . IDENT_6 . IDENT_9 . METHOD_0 ( ) } ; double [ ] IDENT_10 = new double [ ] { FLOAT_0 , FLOAT_1 } ; double [ ] [ ] IDENT_11 = new double [ ] [ ] { new double [ ] { FLOAT_2 , FLOAT_3 } , new double [ ] { FLOAT_1 , FLOAT_0 } } ; double [ ] [ ] IDENT_12 = new double [ ] [ ] { new double [ ] { FLOAT_4 , FLOAT_1 , FLOAT_5 } , new double [ ] { FLOAT_0 , FLOAT_3 , FLOAT_4 } } ; int [ ] result = com . IDENT_13 . utils . math . IDENT_14 . compute ( IDENT_5 , IDENT_0 , IDENT_10 , IDENT_11 , IDENT_12 ) ; java . util . List < test . utils . math . IDENT_1 . IDENT_2 > IDENT_15 = java . util . Arrays . stream ( result ) . METHOD_1 ( ( r ) -> test . utils . math . IDENT_2 . values ( ) [ r ] ) . collect ( java . util . stream . IDENT_16 . toList ( ) ) ; System . out . println ( IDENT_15 ) ; "<AssertPlaceHolder>" ; } compute ( int [ ] , int [ ] , double [ ] , double [ ] [ ] , double [ ] [ ] ) { double [ ] [ ] v = new double [ IDENT_17 . length ] [ IDENT_0 . length ] ; int [ ] [ ] path = new int [ IDENT_0 . length ] [ IDENT_17 . length ] ; for ( int y : IDENT_0 ) { v [ 0 ] [ y ] = ( IDENT_10 [ y ] ) * ( IDENT_12 [ y ] [ IDENT_17 [ 0 ] ] ) ; path [ y ] [ 0 ] = y ; } for ( int t = 1 ; t < ( IDENT_17 . length ) ; ++ t ) { int [ ] [ ] IDENT_18 = new int [ IDENT_0 . length ] [ IDENT_17 . length ] ; for ( int y : IDENT_0 ) { double IDENT_19 = - 1 ; int state ; for ( int IDENT_20 : IDENT_0 ) { double IDENT_21 = ( ( v [ ( t - 1 ) ] [ IDENT_20 ] ) * ( IDENT_11 [ IDENT_20 ] [ y ] ) ) * ( IDENT_12 [ y ] [ IDENT_17 [ t ] ] ) ; if ( IDENT_21 > IDENT_19 ) { IDENT_19 = IDENT_21 ; state = IDENT_20 ; v [ t ] [ y ] = IDENT_19 ; java . lang . System . METHOD_2 ( path [ state ] , 0 , IDENT_18 [ y ] , 0 , t ) ; IDENT_18 [ y ] [ t ] = y ; } } } path = IDENT_18 ; } double IDENT_19 = - 1 ; int state = 0 ; for ( int y : IDENT_0 ) { if ( ( v [ ( ( IDENT_17 . length ) - 1 ) ] [ y ] ) > IDENT_19 ) { IDENT_19 = v [ ( ( IDENT_17 . length ) - 1 ) ] [ y ] ; state = y ; } } return path [ state ] ; }
org . junit . Assert . assertThat ( IDENT_15 , org . hamcrest . Matchers . is ( java . util . Arrays . asList ( test . utils . math . IDENT_1 . IDENT_2 . IDENT_4 , test . utils . math . IDENT_1 . IDENT_2 . IDENT_3 , test . utils . math . IDENT_1 . IDENT_2 . IDENT_3 ) ) )