#include <stdio.h>
#include <math.h>
typedef struct {
int x, y;
} Point;
int main() {
int err, n;
Point target, hide_sites[n];
scanf("%d %d", &target.
x, &target.
y);
for (int i = 0; i < n; ++i) {
scanf("%d %d", &hide_sites
[i
].
x, &hide_sites
[i
].
y); }
int closest_headshot = -1;
double min_distance_headshot = 2000.0;
int torso_sites[2] = {-1, -1};
double min_distance_torso[2] = {2000.0, 2000.0};
for (int i = 0; i < n; ++i) {
double distance
= sqrt(pow(target.
x - hide_sites
[i
].
x, 2) + pow(target.
y - hide_sites
[i
].
y, 2)); int mil_distance = (int)(distance * 1000); // converting meters to millimeters
if (mil_distance <= err) {
if (mil_distance < min_distance_headshot) {
min_distance_headshot = mil_distance;
closest_headshot = i;
}
} else if (mil_distance <= err * 2) {
if (mil_distance < min_distance_torso[1]) {
if (mil_distance < min_distance_torso[0]) {
min_distance_torso[1] = min_distance_torso[0];
torso_sites[1] = torso_sites[0];
min_distance_torso[0] = mil_distance;
torso_sites[0] = i;
} else {
min_distance_torso[1] = mil_distance;
torso_sites[1] = i;
}
}
}
}
if (closest_headshot != -1) {
printf("%d\n", closest_headshot
); } else if (torso_sites[0] != -1 && torso_sites[1] != -1) {
printf("%d %d\n", torso_sites
[0], torso_sites
[1]); } else {
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxtYXRoLmg+Cgp0eXBlZGVmIHN0cnVjdCB7CiAgICBpbnQgeCwgeTsKfSBQb2ludDsKCmludCBtYWluKCkgewogICAgaW50IGVyciwgbjsKICAgIHNjYW5mKCIlZCIsICZlcnIpOwogICAgc2NhbmYoIiVkIiwgJm4pOwoKICAgIFBvaW50IHRhcmdldCwgaGlkZV9zaXRlc1tuXTsKICAgIHNjYW5mKCIlZCAlZCIsICZ0YXJnZXQueCwgJnRhcmdldC55KTsKCiAgICBmb3IgKGludCBpID0gMDsgaSA8IG47ICsraSkgewogICAgICAgIHNjYW5mKCIlZCAlZCIsICZoaWRlX3NpdGVzW2ldLngsICZoaWRlX3NpdGVzW2ldLnkpOwogICAgfQoKICAgIGludCBjbG9zZXN0X2hlYWRzaG90ID0gLTE7CiAgICBkb3VibGUgbWluX2Rpc3RhbmNlX2hlYWRzaG90ID0gMjAwMC4wOwogICAgaW50IHRvcnNvX3NpdGVzWzJdID0gey0xLCAtMX07CiAgICBkb3VibGUgbWluX2Rpc3RhbmNlX3RvcnNvWzJdID0gezIwMDAuMCwgMjAwMC4wfTsKCiAgICBmb3IgKGludCBpID0gMDsgaSA8IG47ICsraSkgewogICAgICAgIGRvdWJsZSBkaXN0YW5jZSA9IHNxcnQocG93KHRhcmdldC54IC0gaGlkZV9zaXRlc1tpXS54LCAyKSArIHBvdyh0YXJnZXQueSAtIGhpZGVfc2l0ZXNbaV0ueSwgMikpOwogICAgICAgIGludCBtaWxfZGlzdGFuY2UgPSAoaW50KShkaXN0YW5jZSAqIDEwMDApOyAvLyBjb252ZXJ0aW5nIG1ldGVycyB0byBtaWxsaW1ldGVycwogICAgICAgIGlmIChtaWxfZGlzdGFuY2UgPD0gZXJyKSB7CiAgICAgICAgICAgIGlmIChtaWxfZGlzdGFuY2UgPCBtaW5fZGlzdGFuY2VfaGVhZHNob3QpIHsKICAgICAgICAgICAgICAgIG1pbl9kaXN0YW5jZV9oZWFkc2hvdCA9IG1pbF9kaXN0YW5jZTsKICAgICAgICAgICAgICAgIGNsb3Nlc3RfaGVhZHNob3QgPSBpOwogICAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIGlmIChtaWxfZGlzdGFuY2UgPD0gZXJyICogMikgewogICAgICAgICAgICBpZiAobWlsX2Rpc3RhbmNlIDwgbWluX2Rpc3RhbmNlX3RvcnNvWzFdKSB7CiAgICAgICAgICAgICAgICBpZiAobWlsX2Rpc3RhbmNlIDwgbWluX2Rpc3RhbmNlX3RvcnNvWzBdKSB7CiAgICAgICAgICAgICAgICAgICAgbWluX2Rpc3RhbmNlX3RvcnNvWzFdID0gbWluX2Rpc3RhbmNlX3RvcnNvWzBdOwogICAgICAgICAgICAgICAgICAgIHRvcnNvX3NpdGVzWzFdID0gdG9yc29fc2l0ZXNbMF07CiAgICAgICAgICAgICAgICAgICAgbWluX2Rpc3RhbmNlX3RvcnNvWzBdID0gbWlsX2Rpc3RhbmNlOwogICAgICAgICAgICAgICAgICAgIHRvcnNvX3NpdGVzWzBdID0gaTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgbWluX2Rpc3RhbmNlX3RvcnNvWzFdID0gbWlsX2Rpc3RhbmNlOwogICAgICAgICAgICAgICAgICAgIHRvcnNvX3NpdGVzWzFdID0gaTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBpZiAoY2xvc2VzdF9oZWFkc2hvdCAhPSAtMSkgewogICAgICAgIHByaW50ZigiJWRcbiIsIGNsb3Nlc3RfaGVhZHNob3QpOwogICAgfSBlbHNlIGlmICh0b3Jzb19zaXRlc1swXSAhPSAtMSAmJiB0b3Jzb19zaXRlc1sxXSAhPSAtMSkgewogICAgICAgIHByaW50ZigiJWQgJWRcbiIsIHRvcnNvX3NpdGVzWzBdLCB0b3Jzb19zaXRlc1sxXSk7CiAgICB9IGVsc2UgewogICAgICAgIHByaW50ZigiYWJvcnRcbiIpOwogICAgfQoKICAgIHJldHVybiAwOwp9Cg==