#include #define MAXL 500 // Velikost lesa #define MAXS 100000 // Max. #stromů int D; // Průměr legie int S; // Počet stromů int st[MAXS][2]; // Stromy int w[MAXS]; // Značky při prohledávání int q[MAXS]; // Fronta pro prohledávání int sqr(int x) { return x*x; } // Druhá mocnina vzdálenosti dvou stromů int qdist(int i, int j) { return sqr(st[i][0] - st[j][0]) + sqr(st[i][1] - st[j][1]); } // Prohledávání do šířky int search(void) { // Naplníme frontu stromy dosažitelnými zleva int qr = 0, qw = 0; for (int i=0; i MAXL - D) return 0; w[j] = 1; q[qw++] = j; } } return 1; } int main(void) { scanf("%d", &D); int nt; scanf("%d", &nt); for (int i=0; i