def f(c,l):
def r(t):p=abs(t[0]-x);q=abs(t[1]-y);return p+q-.5*min(p,q)
v=0;x,y=0,0
while c>0 and len(l)>0:
l.sort(key=r);c-=r(l[0]);x,y=l.pop(0)
if c>=0:v+=1
return v
print f(4,[(-1,0), (1,0), (2,0), (3,0), (4,0), (5,0)])
print f(4,[(1,1), (2,2), (3,3)])
print f(5,[(1,1), (2,1), (3,1), (4,1), (5,0), (5,1)])
print f(2016,[(1,1), (2,2), (3,3)])
ZGVmIGYoYyxsKToKIGRlZiByKHQpOnA9YWJzKHRbMF0teCk7cT1hYnModFsxXS15KTtyZXR1cm4gcCtxLS41Km1pbihwLHEpCiB2PTA7eCx5PTAsMAogd2hpbGUgYz4wIGFuZCBsZW4obCk+MDoKICBsLnNvcnQoa2V5PXIpO2MtPXIobFswXSk7eCx5PWwucG9wKDApCiAgaWYgYz49MDp2Kz0xCiByZXR1cm4gdgoKcHJpbnQgZig0LFsoLTEsMCksICgxLDApLCAoMiwwKSwgKDMsMCksICg0LDApLCAoNSwwKV0pCnByaW50IGYoNCxbKDEsMSksICgyLDIpLCAoMywzKV0pCnByaW50IGYoNSxbKDEsMSksICgyLDEpLCAoMywxKSwgKDQsMSksICg1LDApLCAoNSwxKV0pCgpwcmludCBmKDIwMTYsWygxLDEpLCAoMiwyKSwgKDMsMyldKQ==