diff options
| author | Mohammad Sajid Anwar <Mohammad.Anwar@yahoo.com> | 2024-04-09 10:52:05 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-04-09 10:52:05 +0100 |
| commit | 895d77950307a2c67c19d895e2fcf58ee3d1bffc (patch) | |
| tree | 0534f5b6d1d51f7e837c5e1d38bda691fe345ab8 /challenge-264/luca-ferrari/python | |
| parent | 9c5322948e7e59d7c5248ffabdbd3cf3b5d53c1e (diff) | |
| parent | 2126fcd1ffcf87c9eb31ac28b50ff5fa9315bf0b (diff) | |
| download | perlweeklychallenge-club-895d77950307a2c67c19d895e2fcf58ee3d1bffc.tar.gz perlweeklychallenge-club-895d77950307a2c67c19d895e2fcf58ee3d1bffc.tar.bz2 perlweeklychallenge-club-895d77950307a2c67c19d895e2fcf58ee3d1bffc.zip | |
Merge pull request #9898 from fluca1978/PWC264
PWC 264
Diffstat (limited to 'challenge-264/luca-ferrari/python')
| -rw-r--r-- | challenge-264/luca-ferrari/python/ch-1.py | 38 | ||||
| -rw-r--r-- | challenge-264/luca-ferrari/python/ch-2.py | 46 |
2 files changed, 84 insertions, 0 deletions
diff --git a/challenge-264/luca-ferrari/python/ch-1.py b/challenge-264/luca-ferrari/python/ch-1.py new file mode 100644 index 0000000000..7fb68142f6 --- /dev/null +++ b/challenge-264/luca-ferrari/python/ch-1.py @@ -0,0 +1,38 @@ +#!python + +# +# Perl Weekly Challenge 264 +# Task 1 +# +# See <https://perlweeklychallenge.org/blog/perl-weekly-challenge-264> +# + +import sys +import re + +# task implementation +# the return value will be printed +def task_1( args ): + string = args[ 0 ] + letters = [] + + for letter in string: + if not letter.isupper(): + continue + + engine = re.compile( letter.lower() ) + if not engine.search( string ): + continue + + letters.append( letter ) + + if len( letters ) <= 0: + return '' + + letters.sort() + return letters[ len( letters ) - 1 ] + + +# invoke the main without the command itself +if __name__ == '__main__': + print( task_1( sys.argv[ 1: ] ) ) diff --git a/challenge-264/luca-ferrari/python/ch-2.py b/challenge-264/luca-ferrari/python/ch-2.py new file mode 100644 index 0000000000..3813d5710e --- /dev/null +++ b/challenge-264/luca-ferrari/python/ch-2.py @@ -0,0 +1,46 @@ +#!python + +# +# Perl Weekly Challenge 264 +# Task 2 +# +# See <https://perlweeklychallenge.org/blog/perl-weekly-challenge-264> +# + +import sys + +# task implementation +# the return value will be printed +def task_2( args ): + source = [] + indexes = [] + target = [] + swap = False + for v in args: + if v == '|': + swap = True + continue + else: + if swap: + indexes.append( int( v ) ) + else: + source.append( int( v ) ) + + + for i in range( 0, len( indexes ) ): + target_index = indexes[ i ] + if len( target ) <= target_index: + target.insert( target_index, source[ i ] ) + else: + swapper = [] + swapper = target[ 0 : target_index ] + swapper.append( source[ i ] ) + swapper += target[ target_index : ] + target = swapper + + + return target + +# invoke the main without the command itself +if __name__ == '__main__': + print( task_2( sys.argv[ 1: ] ) ) |
