diff options
| author | Mohammad S Anwar <Mohammad.Anwar@yahoo.com> | 2023-03-26 10:59:45 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-03-26 10:59:45 +0100 |
| commit | 264e19ac3adc1f3e04c8d6ab42505d4e1bb64b66 (patch) | |
| tree | 4ecbc55de4f2bdfd1b32566b2bfe8c9332b40c81 /challenge-209/spadacciniweb/python/ch-1.py | |
| parent | 06fa96309a44869a97c7ff851bbce30508b0b0a8 (diff) | |
| parent | 0ec9f9ca94e7123281705df933dd09e8d44cac66 (diff) | |
| download | perlweeklychallenge-club-264e19ac3adc1f3e04c8d6ab42505d4e1bb64b66.tar.gz perlweeklychallenge-club-264e19ac3adc1f3e04c8d6ab42505d4e1bb64b66.tar.bz2 perlweeklychallenge-club-264e19ac3adc1f3e04c8d6ab42505d4e1bb64b66.zip | |
Merge pull request #7786 from spadacciniweb/PWC-209
PWC-209
Diffstat (limited to 'challenge-209/spadacciniweb/python/ch-1.py')
| -rw-r--r-- | challenge-209/spadacciniweb/python/ch-1.py | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/challenge-209/spadacciniweb/python/ch-1.py b/challenge-209/spadacciniweb/python/ch-1.py new file mode 100644 index 0000000000..88e7289f52 --- /dev/null +++ b/challenge-209/spadacciniweb/python/ch-1.py @@ -0,0 +1,46 @@ +# Task 1: Special Bit Characters +# Submitted by: Mohammad S Anwar +# +# You are given an array of binary bits that ends with 0. +# +# Valid sequences in the bit string are: +# +# [0] -decodes-to-> "a" +# [1, 0] -> "b" +# [1, 1] -> "c" +# Write a script to print 1 if the last character is an “a” otherwise print 0. +# +# Example 1 +# Input: @bits = (1, 0, 0) +# Output: 1 +# +# The given array bits can be decoded as 2-bits character (10) followed by 1-bit character (0). +# +# Example 2 +# Input: @bits = (1, 1, 1, 0) +# Output: 0 +# +# Possible decode can be 2-bits character (11) followed by 2-bits character (10) i.e. the last character is not 1-bit character. + +import re +import sys + +if __name__ == "__main__": + input = sys.argv[1:] + if (len(input) < 1 + or + len(list(filter(lambda x: re.search(r'[^01]', x), input))) > 0): + sys.exit("Input error") + + i = 0 + while i < len(input)-1: + if (input[i] == '1'): + i += 1 + i += 1 + if len(input)-1 == i and input[i] == '1': + sys.exit("Input error") + + if (len(input) > i): + print(1) + else: + print(0) |
