import sys nine_nine = [] for i in range(0, 10): line = [] for j in range(0, 10): line.append(i * j) nine_nine.append(line) def add(a1, b1): def add_(a, b): out = [] upper = 0 for k, i in enumerate(a): if k < len(b): re = i + b[k] + upper else: re = i + upper upper = re // 10 out.append(re % 10) if upper != 0: out.append(upper) return out if len(a1) > len(b1): return add_(a1, b1) else: return add_(b1, a1) def solve(a:str, b:str): outs = [] last = [] this = [] result = [] for k, i in enumerate(a[::-1]): upper = 0 this = [0 for _ in range(k)] for j in b[::-1]: r = int(i) * int(j) + upper re = r % 10 this.append(re) upper = r // 10 if upper != 0: this.append(upper) outs.append(this) if last != []: result = add(last, this) # print(f"{last}+{this}={result}") else: result = this last = result # print(outs) return result for line in sys.stdin: a,b = line.split() aws = solve(a, b) for i in aws[::-1]: print(i, end="") print()
纯纯的牛马题,用手算的思路来解