import java.util.* ;
import java.lang.* ;
import java.io.* ;
import java.math.* ;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
System .
out .
println ( waysToGoal
( 610 ,
6 ) ) ; }
private static BigInteger waysToGoal
( int n,
int face
) { for ( int i = 1 ; i <= n; i++ ) {
int leastStep = i/ face + 1 ;
// waysWithSteps[i][0] = BigInteger.ZERO;
for ( int j = 1 ; j < i; j++ ) {
if ( i <= face && j == 1 ) {
} else if ( j <= leastStep) {
for ( int k = i- 1 ; k >= j- 1 && k >= i- face; k-- ) {
System .
out .
println ( "i = " + i
+ ", j = " + j
+ ", k = " + k
) ; waysWithSteps[ i] [ j] .add ( waysWithSteps[ k] [ j- 1 ] ) ;
}
} else {
waysWithSteps[ i] [ j] = waysWithSteps[ i- 1 ] [ j- 1 ] .add ( waysWithSteps[ i- 1 ] [ j- 1 ] ) ;
}
}
}
for ( int i = 1 ; i <= n; i++ ) {
for ( int j = 1 ; j <= i; j++ ) {
System .
out .
print ( waysWithSteps
[ i
] [ j
] + " " ) ; }
ways.add ( waysWithSteps[ n] [ i] ) ;
}
return ways;
}
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CmltcG9ydCBqYXZhLm1hdGguKjsKCi8qIE5hbWUgb2YgdGhlIGNsYXNzIGhhcyB0byBiZSAiTWFpbiIgb25seSBpZiB0aGUgY2xhc3MgaXMgcHVibGljLiAqLwpjbGFzcyBJZGVvbmUKewogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uCiAgICB7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKHdheXNUb0dvYWwoNjEwLCA2KSk7CiAgICB9CiAgICAKICAgIHByaXZhdGUgc3RhdGljIEJpZ0ludGVnZXIgd2F5c1RvR29hbChpbnQgbiwgaW50IGZhY2UpIHsKICAgICAgICBCaWdJbnRlZ2VyW11bXSB3YXlzV2l0aFN0ZXBzID0gbmV3IEJpZ0ludGVnZXJbbisxXVtuKzFdOwogICAgICAgIGZvciAoaW50IGkgPSAxOyBpIDw9IG47IGkrKykgewogICAgICAgICAgICBpbnQgbGVhc3RTdGVwID0gaS9mYWNlICsgMTsKICAgICAgICAgICAgLy8gd2F5c1dpdGhTdGVwc1tpXVswXSA9IEJpZ0ludGVnZXIuWkVSTzsKICAgICAgICAgICAgZm9yIChpbnQgaiA9IDE7IGogPCBpOyBqKyspIHsKICAgICAgICAgICAgICAgIGlmIChpIDw9IGZhY2UgJiYgaiA9PSAxKSB7CiAgICAgICAgICAgICAgICAgICAgd2F5c1dpdGhTdGVwc1tpXVtqXSA9IEJpZ0ludGVnZXIuT05FOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmIChqIDw9IGxlYXN0U3RlcCkgewogICAgICAgICAgICAgICAgICAgIHdheXNXaXRoU3RlcHNbaV1bal0gPSBCaWdJbnRlZ2VyLlpFUk87CiAgICAgICAgICAgICAgICAgICAgZm9yIChpbnQgayA9IGktMTsgayA+PSBqLTEgJiYgayA+PSBpLWZhY2U7IGstLSkgewogICAgICAgICAgICAgICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oImkgPSAiICsgaSArICIsIGogPSAiICsgaiArICIsIGsgPSAiICsgayk7CiAgICAgICAgICAgICAgICAgICAgICAgIHdheXNXaXRoU3RlcHNbaV1bal0uYWRkKHdheXNXaXRoU3RlcHNba11bai0xXSk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICB3YXlzV2l0aFN0ZXBzW2ldW2pdID0gd2F5c1dpdGhTdGVwc1tpLTFdW2otMV0uYWRkKHdheXNXaXRoU3RlcHNbaS0xXVtqLTFdKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICB3YXlzV2l0aFN0ZXBzW2ldW2ldID0gQmlnSW50ZWdlci5PTkU7CiAgICAgICAgfQogICAgICAgIEJpZ0ludGVnZXIgd2F5cyA9IEJpZ0ludGVnZXIuWkVSTzsKICAgICAgICBmb3IgKGludCBpID0gMTsgaSA8PSBuOyBpKyspIHsKICAgICAgICAgICAgZm9yIChpbnQgaiA9IDE7IGogPD0gaTsgaisrKSB7CiAgICAgICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50KHdheXNXaXRoU3RlcHNbaV1bal0gKyAiICIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHdheXMuYWRkKHdheXNXaXRoU3RlcHNbbl1baV0pOwogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIiAiKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHdheXM7CiAgICB9Cn0=
stdout
i = 6, j = 2, k = 5
i = 6, j = 2, k = 4
i = 6, j = 2, k = 3
i = 6, j = 2, k = 2
i = 6, j = 2, k = 1
i = 7, j = 1, k = 6
stderr
Exception in thread "main" java.lang.NullPointerException
at java.math.BigInteger.add(BigInteger.java:1225)
at Ideone.waysToGoal(Main.java:26)
at Ideone.main(Main.java:11)