Task: | Jakkara |
Sender: | |
Submission time: | 2015-07-18 20:43:42 +0300 |
Language: | Python2 |
Status: | READY |
Result: | 46 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 21 |
#2 | ACCEPTED | 25 |
#3 | TIME LIMIT EXCEEDED | 0 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.09 s | 1 | details |
#2 | ACCEPTED | 0.09 s | 1 | details |
#3 | ACCEPTED | 0.09 s | 1 | details |
#4 | ACCEPTED | 0.10 s | 1 | details |
#5 | ACCEPTED | 0.10 s | 1 | details |
#6 | ACCEPTED | 0.08 s | 2 | details |
#7 | ACCEPTED | 0.10 s | 2 | details |
#8 | ACCEPTED | 0.08 s | 2 | details |
#9 | ACCEPTED | 0.09 s | 2 | details |
#10 | ACCEPTED | 0.10 s | 2 | details |
#11 | TIME LIMIT EXCEEDED | -- | 3 | details |
#12 | WRONG ANSWER | 0.07 s | 3 | details |
#13 | TIME LIMIT EXCEEDED | -- | 3 | details |
#14 | TIME LIMIT EXCEEDED | -- | 3 | details |
#15 | ACCEPTED | 0.10 s | 3 | details |
Code
a,b,c,d=[int(i) for i in raw_input().split()] def chg(v): return abs(a-v)+abs(b-v)+abs(c-v)+abs(d-v) mn = a mx = a if (b < mn): mn = b if (c < mn): mn = c if (d < mn): mn = d if (b > mx): mx = b if (c > mx): mx = c if (d > mx): mx = d if (mn == mx): print 0 exit() res = chg(mn) tmp = 0 pres_up = -1 pres_down = -1 up = (mx+mn)/2 down = (mx+mn)/2-1 while True: if up == -1 and down == -1: break if up != -1: tmp = chg(up) if (tmp >= pres_up and pres_up != -1): up = -1 else: pres_up = tmp if tmp < res: res = tmp up += 1 if up > mx: up = -1 if down != -1: tmp = chg(down) if (tmp >= pres_down and pres_down != -1): down = -1 else: pres_down = tmp if tmp < res: res = tmp down += 1 if down > mx: down = -1 print res
Test details
Test 1
Group: 1
Verdict: ACCEPTED
input |
---|
2 4 2 1 |
correct output |
---|
3 |
user output |
---|
3 |
Test 2
Group: 1
Verdict: ACCEPTED
input |
---|
4 4 5 1 |
correct output |
---|
4 |
user output |
---|
4 |
Test 3
Group: 1
Verdict: ACCEPTED
input |
---|
1 3 3 3 |
correct output |
---|
2 |
user output |
---|
2 |
Test 4
Group: 1
Verdict: ACCEPTED
input |
---|
4 5 2 1 |
correct output |
---|
6 |
user output |
---|
6 |
Test 5
Group: 1
Verdict: ACCEPTED
input |
---|
1 2 3 4 |
correct output |
---|
4 |
user output |
---|
4 |
Test 6
Group: 2
Verdict: ACCEPTED
input |
---|
755 181 899 550 |
correct output |
---|
923 |
user output |
---|
923 |
Test 7
Group: 2
Verdict: ACCEPTED
input |
---|
415 158 928 660 |
correct output |
---|
1015 |
user output |
---|
1015 |
Test 8
Group: 2
Verdict: ACCEPTED
input |
---|
8 786 277 786 |
correct output |
---|
1287 |
user output |
---|
1287 |
Test 9
Group: 2
Verdict: ACCEPTED
input |
---|
740 537 892 1000 |
correct output |
---|
615 |
user output |
---|
615 |
Test 10
Group: 2
Verdict: ACCEPTED
input |
---|
805 794 799 591 |
correct output |
---|
219 |
user output |
---|
219 |
Test 11
Group: 3
Verdict: TIME LIMIT EXCEEDED
input |
---|
918046201 377309798 763092200 ... |
correct output |
---|
753184325 |
user output |
---|
(empty) |
Test 12
Group: 3
Verdict: WRONG ANSWER
input |
---|
185264934 19222757 522094385 9... |
correct output |
---|
595938743 |
user output |
---|
741888867 |
Test 13
Group: 3
Verdict: TIME LIMIT EXCEEDED
input |
---|
727047841 260674959 553589480 ... |
correct output |
---|
678802024 |
user output |
---|
(empty) |
Test 14
Group: 3
Verdict: TIME LIMIT EXCEEDED
input |
---|
769070856 877861912 488304785 ... |
correct output |
---|
614008750 |
user output |
---|
(empty) |
Test 15
Group: 3
Verdict: ACCEPTED
input |
---|
1 1 1 1000000000 |
correct output |
---|
999999999 |
user output |
---|
999999999 |