51 lines
1.0 KiB
Python
51 lines
1.0 KiB
Python
def process_inputs(inputs):
|
|
lines = inputs.split('\n')
|
|
lines = iter(lines)
|
|
|
|
testcases_num = int(next(lines))
|
|
testcases = []
|
|
|
|
for i in range(testcases_num):
|
|
line = next(lines)
|
|
numbers = [int(i) for i in line.split(' ')]
|
|
|
|
|
|
testcase = {
|
|
'sequence': numbers,
|
|
}
|
|
testcases.append(testcase)
|
|
|
|
return testcases
|
|
|
|
|
|
|
|
|
|
def solve(testcases):
|
|
res = ''
|
|
for i, testcase in enumerate(testcases):
|
|
print('Solving testcase #', i + 1)
|
|
|
|
res += process_testcase(**testcase)
|
|
|
|
return res
|
|
|
|
|
|
|
|
def process_testcase(sequence) -> str:
|
|
positives = []
|
|
negatives = []
|
|
all_abs = []
|
|
zeroes_count = 0
|
|
for num in sequence:
|
|
all_abs.append(abs(num))
|
|
if num > 0:
|
|
positives.append(num)
|
|
elif num < 0:
|
|
negatives.append(num)
|
|
else:
|
|
zeroes_count += 1
|
|
|
|
final_position = len(positives) - len(negatives)
|
|
total_time = sum(all_abs) + zeroes_count
|
|
return f"{final_position} {total_time}\n"
|