Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Task: WLAN
- Za zadani skup WLAN odašiljaca zadanih sa koordinatama (X,Y)
- i jedinstvenim dometom signala R za svaku stanicu (u metrima),
- odrediti minimlani broj stanica koje mogu neposredno komunicirati
- te maksimalni broj stanica koje mogu neposredno komunicirati
- Category: P2
- Solution by: Kristijan Burnik
- */
- #include <iostream>
- #include <cstdlib>
- #include <algorithm>
- #include <vector>
- #include <set>
- #include <map>
- using namespace std;
- typedef pair <int,int> Com;
- #define X first
- #define Y second
- int q(int x) {return x*x; }
- bool inrange(Com a, Com b, int r){
- return (q(a.X-b.X) + q(a.Y-b.Y)) <= (r*r);
- }
- int main(void) {
- vector < Com > coms;
- int r,n;
- cin >> r >> n;
- coms.resize(n);
- vector <int> graph;
- graph.resize(n);
- int mins = n , maxs = 0 , s;
- for (int i = 0; i < n ; i++) {
- cin >> coms[i].X >> coms[i].Y;
- for (int j = 0 ; j <= i; j++) {
- if (inrange(coms[i],coms[j],r)) {
- s = ++graph[ i ];
- mins = min(s,mins);
- maxs = max(s,maxs);
- }
- }
- }
- cout << mins << " " << maxs << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement