48 lines
1.4 KiB
Python
48 lines
1.4 KiB
Python
test_cases = [
|
|
("764", 3),
|
|
("6274861", 14),
|
|
]
|
|
|
|
for test_num, (input_data, expected) in enumerate(test_cases, 1):
|
|
f = open('INPUT.TXT', 'w')
|
|
f.write(input_data)
|
|
f.close()
|
|
|
|
number = input_data
|
|
number = number.replace('\n', '').replace('\r', '').replace(' ', '')
|
|
|
|
n = len(number)
|
|
max_sum = -999999999
|
|
|
|
for skip in range(n):
|
|
s = 0
|
|
pos = 0
|
|
for i in range(n):
|
|
if i != skip:
|
|
if pos % 2 == 0:
|
|
s = s + int(number[i])
|
|
else:
|
|
s = s - int(number[i])
|
|
pos = pos + 1
|
|
if s > max_sum:
|
|
max_sum = s
|
|
|
|
result = max_sum
|
|
status = "OK" if result == expected else "FAIL"
|
|
print(f"Test {test_num}: input={input_data}, expected={expected}, got={result} - {status}")
|
|
|
|
if result != expected:
|
|
print(f" Details for {input_data}:")
|
|
for skip in range(n):
|
|
new_num = number[:skip] + number[skip+1:]
|
|
s = 0
|
|
pos = 0
|
|
for i in range(n):
|
|
if i != skip:
|
|
if pos % 2 == 0:
|
|
s = s + int(number[i])
|
|
else:
|
|
s = s - int(number[i])
|
|
pos = pos + 1
|
|
print(f" Remove pos {skip} (digit '{number[skip]}'): {new_num} -> sum={s}")
|