Count the Overlap by rolf

def q():print p.pop(),max(0,B[0]-A[0])*max(0,B[1]-A[1]),
A=[0,0];B=[0,0]
while 1:
 p=["abc","bc","ac","ab"]
 l=map(int,raw_input().split()[1::2])
 for i in[0,4]:
\x09for j in range(i+4,9,4):
\x09 for k in[0,1]:A[k]=max(l[i+k],l[j+k]);B[k]=min(l[i+k]+l[i+2+k],l[j+k]+l[j+2+k])
\x09 q()
 for k in[0,1]:A[k]=max(l[k],A[k]);B[k]=min(l[k]+l[2+k],B[k])
 q();print

Note that non-ascii characters in the above source code will be escaped (such as \x9f).

download

return to the top page