diff options
Diffstat (limited to 'challenge-246/luca-ferrari/python')
| -rw-r--r-- | challenge-246/luca-ferrari/python/ch-1.py | 28 | ||||
| -rw-r--r-- | challenge-246/luca-ferrari/python/ch-2.py | 43 |
2 files changed, 71 insertions, 0 deletions
diff --git a/challenge-246/luca-ferrari/python/ch-1.py b/challenge-246/luca-ferrari/python/ch-1.py new file mode 100644 index 0000000000..98b32d6125 --- /dev/null +++ b/challenge-246/luca-ferrari/python/ch-1.py @@ -0,0 +1,28 @@ +#!python + +# +# Perl Weekly Challenge 246 +# Task 1 +# +# See <https://perlweeklychallenge.org/blog/perl-weekly-challenge-246/> +# + +import sys +import random + +# task implementation +def main( argv ): + values = [] + while len( values ) < 6: + current_value = random.randint( 1, 49 ) + if not current_value in values: + values.append( current_value ) + + print( "\n".join( map( str, values ) ) ) + + +# invoke the main without the command itself +if __name__ == '__main__': + main( sys.argv[ 1: ] ) + + diff --git a/challenge-246/luca-ferrari/python/ch-2.py b/challenge-246/luca-ferrari/python/ch-2.py new file mode 100644 index 0000000000..dbd0395ca7 --- /dev/null +++ b/challenge-246/luca-ferrari/python/ch-2.py @@ -0,0 +1,43 @@ +#!python + +# +# Perl Weekly Challenge 246 +# Task 2 +# +# See <https://perlweeklychallenge.org/blog/perl-weekly-challenge-246/> +# + +import sys +from itertools import count + +# task implementation +def main( argv ): + nums = list( map( int, argv ) ) + ko = len( nums ) - 2 + + for current_index in range( 2, len( nums ) ): + for p in count( start = 1 ): + for q in count( start = 1 ): + if nums[ current_index ] == ( p * nums[ current_index - 2 ] + q * nums[ current_index - 1 ] ) \ + or nums[ current_index ] == ( p * -1 * nums[ current_index - 2 ] + q * nums[ current_index - 1 ] ) \ + or nums[ current_index ] == ( p * -1 * nums[ current_index - 2 ] + q * -1 * nums[ current_index - 1 ] ) \ + or nums[ current_index ] == ( p * nums[ current_index - 2 ] + q * -1 * nums[ current_index - 1 ] ): + ok = True + ko = ko - 1 + break + + if ok: + break + + if ko == 0: + print( 'True' ) + else: + print( 'False' ) + + + +# invoke the main without the command itself +if __name__ == '__main__': + main( sys.argv[ 1: ] ) + + |
