Какое число образовано из пяти последовательных цифр (идущих не обязательно по порядку) так, что число, образованное первыми двумя цифрами, умноженное на среднюю цифру, дает число, образованное последними двумя цифрами? (число 01234 считать пятизначным). Например,3412 = 03412; 03*4=12. Яп - pascal, python
def run(code): code = parse(code) blocks = block(code) x = i = 0 bf = {0: 0} while i < len(code): sym = code[i] if sym == '>': x += 1 bf.setdefault(x, 0) elif sym == '<': x -= 1 elif sym == '+': bf[x] += 1 elif sym == '-': bf[x] -= 1 elif sym == '.': print(chr(bf[x]), end='') elif sym == ',': bf[x] = int(input('Input: ')) elif sym == '[': if not bf[x]: i = blocks[i] elif sym == ']': if bf[x]: i = blocks[i] i += 1 Python def run(code): code = parse(code) blocks = block(code) x = i = 0 bf = {0: 0} while i < len(code): sym = code[i] if sym == '>': x += 1 bf.setdefault(x, 0) elif sym == '<': x -= 1 elif sym == '+': bf[x] += 1 elif sym == '-': bf[x] -= 1 elif sym == '.': print(chr(bf[x]), end='') elif sym == ',': bf[x] = int(input('Input: ')) elif sym == '[': if not bf[x]: i = blocks[i] elif sym == ']': if bf[x]: i = blocks[i] i += 1
5ickppl_inactive2857169, def block(code): opened = [] blocks = {} for i in range(len(code)): if code[i] == '[': opened.append(i) elif code[i] == ']': blocks[i] = opened[-1] blocks[opened.pop()] = i return blocks def parse(code): return ''.join(c for c in code if c in '><+-.,[]') def run(code): code = parse(code) x = i = 0 bf = {0: 0} blocks = block(code) l = len(code) while i < l: sym = code[i] if sym == '>': x += 1 bf.setdefault(x, 0) elif sym == '<': x -= 1 elif sym == '+': bf[x] += 1 elif sym == '-': bf[x] -= 1 elif sym == '.': print(chr(bf[x]), end='') elif sym == ',': bf[x] = int(input('Input: ')) elif sym == '[': if not bf[x]: i = blocks[i] elif sym == ']': if bf[x]: i = blocks[i] i += 1 input idi naxyi code = input() run(code) Python def block(code): opened = [] blocks = {} for i in range(len(code)): if code[i] == '[': opened.append(i) elif code[i] == ']': blocks[i] = opened[-1] blocks[opened.pop()] = i return blocks def parse(code): return ''.join(c for c in code if c in '><+-.,[]') def run(code): code = parse(code) x = i = 0 bf = {0: 0} blocks = block(code) l = len(code) while i < l: sym = code[i] if sym == '>': x += 1 bf.setdefault(x, 0) elif sym == '<': x -= 1 elif sym == '+': bf[x] += 1 elif sym == '-': bf[x] -= 1 elif sym == '.': print(chr(bf[x]), end='') elif sym == ',': bf[x] = int(input('Input: ')) elif sym == '[': if not bf[x]: i = blocks[i] elif sym == ']': if bf[x]: i = blocks[i] i += 1 input idi naxyi code = input() run(code)