Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- first=raw_input().split()
- T=int(first[0])
- field=int(first[1])
- bearx=int(first[2])
- beary=int(first[3])
- def returnyforx(x,y1,y2,x1,x2):
- return ((y1-y2)/(x1-x2)*(x-x1)+y1)
- def returnxfory(y,y1,y2,x1,x2):
- return returnyforx(y,x1,x2,y1,y2)
- def animalx(xo,dx,i):
- return (xo+i*dx)
- def animaly(yo,dy,i):
- return (yo+i*dy)
- def checkanimalcoincide(anx,any):
- coincide=False
- heightintersect=returnyforx(field,beary,any,bearx,anx)
- widthintersect=returnxfory(field,beary,any,bearx,anx)
- xaxisintersect=returnxfory(0,beary,any,bearx,anx)
- yaxisintersect=returnyforx(0,beary,any,bearx,anx)
- if(widthintersect>=0 and widthintersect <=field and xaxisintersect>=0 and xaxisintersect<=field and abs(beary)>abs(any)):
- coincide=True
- elif(heightintersect>=0 and heightintersect<=field and yaxisintersect>=0 and yaxisintersect<=field and abs(bearx)>abs(anx)):
- coincide=True
- elif(heightintersect>=0 and heightintersect<=field and xaxisintersect>=0 and xaxisintersect<=field and abs(beary)>abs(any)):
- coincide=True
- elif(heightintersect>=0 and heightintersect<=field and widthintersect>=0 and widthintersect<=field and((abs(beary)>abs(any)and abs(bearx)<abs(anx))or(abs(beary)<abs(any)and abs(bearx)>abs(anx)))):
- coincide=True
- elif(xaxisintersect>=0 and xaxisintersect<=field and yaxisintersect>=0 and yaxisintersect<=field and abs(beary)>abs(any) and abs(bearx)>abs(anx)):
- coincide=True
- elif(yaxisintersect>=0 and yaxisintersect<=field and widthintersect>=0 and widthintersect<=field and abs(bearx)>abs(anx)):
- coincide=True
- return coincide
- for i in xrange(0,T):
- quer=raw_input().split()
- K=int(quer[0])
- xo=int(quer[1])
- yo=int(quer[2])
- dx=int(quer[3])
- dy=int(quer[4])
- count=0
- for j in xrange(0,K):
- check=checkanimalcoincide(animalx(xo,dx,j),animaly(yo,dy,j))
- if(check):
- count=count+1
- print (count)
Add Comment
Please, Sign In to add comment