XD

You might also like

Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 1

https://community.topcoder.com/stat?

c=problem_statement&pm=10182 STRING-HASHING
https://community.topcoder.com/stat?c=problem_statement&pm=8243 UNIONFIND-GRAFOS
https://community.topcoder.com/stat?c=problem_statement&pm=10297 GRAFOS
https://community.topcoder.com/stat?c=problem_statement&pm=14247 DP-BITMASK

#include <bits/stdc++.h>
using namespace std;
class CirclesCountry {
public:
bool inCircle( int xcircle , int ycircle , int rcircle , int xpoint , int
ypoint ){
return (xcircle-xpoint)*(xcircle-xpoint)+(ycircle-ypoint)*(ycircle-
ypoint)<=rcircle*rcircle;
}
int leastBorders(vector <int> X, vector <int> Y, vector <int> R, int x1, int y1,
int x2, int y2)
{
int size = X.size();
int minRcover = 1e5;
for( int i=0 ; i<size ; i++ ){
if( inCircle(X[i],Y[i],R[i],x1,y1) && inCircle(X[i],Y[i],R[i],x2,y2) ){
minRcover=min(minRcover,R[i]);
}
}
if( minRcover == 1e5 ) return 0;
int sol = 0;
for( int i=0 ; i<size ; i++ ){
if( R[i]<minRcover && inCircle(X[i],Y[i],R[i],x1,y1) ){
sol++;
}
if( R[i]<minRcover && inCircle(X[i],Y[i],R[i],x2,y2) ){
sol++;
}
}
return sol;
}
};

You might also like