%I
%S 1,6,30,180,1002,6012,34224,205344,1180010,7080060,40911324,245467944,
%T 1423944024,8543664144,49710351720,298262110320,1739627237002,
%U 10437763422012,61002039226716,366012235360296,2142786218045748,12856717308274488,75380119335678608
%N Number of tieless rugby (union) games with n scoring events.
%C In rugby (union) a scoring event can give 3, 5 or 7 points.
%C In April 1992 the current scoring format was introduced: 3 points are awarded for kicks/penalties, 5 points for unconverted tries and 7 points for converted tries. A game is a list of members of {7,5,3,3,5,7} with negative points for the away team, positive for the home team.
%C A tieless game is one in which the teams never have the same score (except at the beginning, when no team has scored yet).
%H Cameron Ford, <a href="/A334288/b334288.txt">Table of n, a(n) for n = 0..1286</a>
%e a(2)=30, because there are 6^2=36 sequences of length 2 from {3,5,7,3,5,7}; the 6 sequences that correspond to games with ties are precisely those of the form {k,k}.
%o (Python)
%o def number_of_tieless_rugby_games(n):
%o """
%o Returns the number of tieless rugby games with n scoring events.
%o A scoring event is a number in (7,5,3,3,5,7) and a game is tieless
%o if the score is never zero, apart from at the start.
%o Negative points represent points for the away team, positive points
%o represent points for the home team
%o """
%o dictionary_of_scores = {0:1}
%o # The keys of this dictionary represent possible scores.
%o # The values represent the number of ways this score can be reached.
%o scoring_events = (7,5,3,3,5,7)
%o for i in range(n):
%o # At each stage, we have the nonzero scores with i scoring events in
%o # dictionary_of_scores. To find nonzero scores with i+1 scoring events
%o # consider each nonzero score, and each possibility for the next
%o # scoring event.
%o old_dictionary = dictionary_of_scores
%o dictionary_of_scores = {}
%o for score, number_of_ways in old_dictionary.items():
%o for scoring_event in scoring_events:
%o new_score = score + scoring_event
%o if new_score != 0:
%o dictionary_of_scores[new_score] =\
%o dictionary_of_scores.get(new_score, 0) + number_of_ways
%o return sum(dictionary_of_scores.values())
%Y Inspired by A137684.
%K nonn
%O 0,2
%A _Cameron Ford_, Jun 13 2020
