use 5.20.0;
use experimental 'postderef';

#use List::SomeUtils qw/ min_by /;
use List::UtilsBy qw/ max_by/;

my @stacks = split ' ', <>;

my %seen;

until( $seen{ join ':', @stacks }++ ) {
    warn "@stacks\n";
    my $col = max_by { $stacks[$_] }  0..$#stacks;
    my $v = $stacks[$col];
    $stacks[$col] = 0;
    $stacks[ ++$col % @stacks ]++ while $v--;
}

say scalar keys %seen;