# If you wish you can import any modules from the standard library
# Do not use modules that are not in the standard library
import sys
def processArray(array):
'''Modify this function to process `array` as indicated
in the question. At the end, return the appropriate
value.
Please create appropriate classes, and use appropriate
data structures as necessary.
Do not print anything in this function.
Submit this entire program (not just this function)
as your answer
'''
if len(array)==1:
return 1
if len(array)==0:
return 0
start = 0
i=0
while i!=len(array):
if array[i]%3==0:
sum_accum = 0
while array[i]%3==0:
sum_accum = sum_accum + array[i]
i = i + 1
array[start] = sum_accum
sum_accum = 0
else:
array[start] = array[i]
i = i + 1
start = start + 1
res = start + 1
sys.stdout.write(str(res))
return res # change this appropriately, if necessary
def run():
array = []
for line in sys.stdin:
try:
intval = int(line)
except ValueError:
# If line is not exactly one integer, ignore it
pass
if intval == 0:
break
array.append(intval)
newlen = processArray(array)
for i in range(newlen):
print(array[i])
if __name__ == '__main__':
run()
IyBJZiB5b3Ugd2lzaCB5b3UgY2FuIGltcG9ydCBhbnkgbW9kdWxlcyBmcm9tIHRoZSBzdGFuZGFyZCBsaWJyYXJ5CiMgRG8gbm90IHVzZSBtb2R1bGVzIHRoYXQgYXJlIG5vdCBpbiB0aGUgc3RhbmRhcmQgbGlicmFyeQppbXBvcnQgc3lzCgoKZGVmIHByb2Nlc3NBcnJheShhcnJheSk6CiAgICAnJydNb2RpZnkgdGhpcyBmdW5jdGlvbiB0byBwcm9jZXNzIGBhcnJheWAgYXMgaW5kaWNhdGVkCiAgICBpbiB0aGUgcXVlc3Rpb24uIEF0IHRoZSBlbmQsIHJldHVybiB0aGUgYXBwcm9wcmlhdGUgCiAgICB2YWx1ZS4KCiAgICBQbGVhc2UgY3JlYXRlIGFwcHJvcHJpYXRlIGNsYXNzZXMsIGFuZCB1c2UgYXBwcm9wcmlhdGUKICAgIGRhdGEgc3RydWN0dXJlcyBhcyBuZWNlc3NhcnkuCgogICAgRG8gbm90IHByaW50IGFueXRoaW5nIGluIHRoaXMgZnVuY3Rpb24uCgogICAgU3VibWl0IHRoaXMgZW50aXJlIHByb2dyYW0gKG5vdCBqdXN0IHRoaXMgZnVuY3Rpb24pCiAgICBhcyB5b3VyIGFuc3dlcgogICAgJycnCiAgICBpZiBsZW4oYXJyYXkpPT0xOgogICAgCXJldHVybiAxCiAgICAJCiAgICBpZiBsZW4oYXJyYXkpPT0wOgogICAgCXJldHVybiAwCiAgICAKICAgIHN0YXJ0ID0gMAogICAgaT0wCiAgICB3aGlsZSBpIT1sZW4oYXJyYXkpOgogICAgCWlmIGFycmF5W2ldJTM9PTA6CiAgICAJCXN1bV9hY2N1bSA9IDAKICAgIAkJd2hpbGUgYXJyYXlbaV0lMz09MDoKICAgIAkJCXN1bV9hY2N1bSA9IHN1bV9hY2N1bSArIGFycmF5W2ldCiAgICAJCQlpID0gaSArIDEKICAgIAkJYXJyYXlbc3RhcnRdID0gc3VtX2FjY3VtCiAgICAJCXN1bV9hY2N1bSA9IDAKICAgIAllbHNlOgogICAgCQlhcnJheVtzdGFydF0gPSBhcnJheVtpXQogICAgCQlpID0gaSArIDEKICAgIAlzdGFydCA9IHN0YXJ0ICsgMQogICAgCQogICAgCQkKICAgIHJlcyA9IHN0YXJ0ICsgMQkKICAgIHN5cy5zdGRvdXQud3JpdGUoc3RyKHJlcykpCiAgICByZXR1cm4gcmVzICAgICMgY2hhbmdlIHRoaXMgYXBwcm9wcmlhdGVseSwgaWYgbmVjZXNzYXJ5CgpkZWYgcnVuKCk6CiAgICBhcnJheSA9IFtdCiAgICBmb3IgbGluZSBpbiBzeXMuc3RkaW46CiAgICAgICAgdHJ5OgogICAgICAgICAgICBpbnR2YWwgPSBpbnQobGluZSkKICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKICAgICAgICAgICAgIyBJZiBsaW5lIGlzIG5vdCBleGFjdGx5IG9uZSBpbnRlZ2VyLCBpZ25vcmUgaXQKICAgICAgICAgICAgcGFzcwogICAgICAgIGlmIGludHZhbCA9PSAwOgogICAgICAgICAgICBicmVhawogICAgICAgIGFycmF5LmFwcGVuZChpbnR2YWwpCiAgICBuZXdsZW4gPSBwcm9jZXNzQXJyYXkoYXJyYXkpCiAgICBmb3IgaSBpbiByYW5nZShuZXdsZW4pOgogICAgICAgIHByaW50KGFycmF5W2ldKQoKaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKICAgIHJ1bigp