Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Aggregate by Operation by sMiTeOne
def calculate(a: int, b: int, operation: str) -> int:
match operation:
case '+':
return a + b
case '-':
return a - b
case '*':
return a * b
case '=':
return b
case '/':
if b:
return a // b
def aggr_operation(data: list[tuple[str, int]]) -> dict[str, int]:
result = {}
for x, integer in data:
op, var = x[0], x[1:]
if not var:
continue
if calculate_result := calculate(result.get(var, 0), integer, op):
result[var] = calculate_result
else:
result.pop(var, None)
return result
Dec. 31, 2022
Comments: