如果说大家想偷个懒,这里分享一个简单的暴力的方法,
大家可以自己参考一下
这个题目可以在蓝桥杯网站上面过40%的样例
算法1
(暴力枚举) $O(n^2)$
include [HTML_REMOVED]
using namespace std;
define int long long
const int N = 10000000;
int xx,yy,rr;
int st[N];
int ans = 0 ;
struct PLL{
int x;
int y;
int r;
};
vector[HTML_REMOVED] zalei;
vector[HTML_REMOVED] jiancha;
bool check(){
for(int i = 0;i < (int)zalei.size();i ){
if(!st[i]){
int x = zalei[i].x;
int y = zalei[i].y;
for(int j = 0;j <(int)jiancha.size();j ){
int a = jiancha[j].x;
int b = jiancha[j].y;
int r = jiancha[j].r;
if((x - a) * (x - a) + (y - b) * (y - b) <= r * r){
xx = x;
yy = y;
rr = zalei[i].r;
st[i] = true;
ans ;
return true;
}
}
}
}
return false;
}
signed main(){
int n,m;cin >> n >> m;
for(int i = 0;i < n;i ){
int a,b,c; cin >> a >> b >> c;
zalei.push_back({a,b,c});
}
for(int i = 0;i < m;i ++){
int a,b,c;cin >> a >> b >> c;
jiancha.push_back({a,b,c});
}
while(check()){
jiancha.push_back({xx,yy,rr});
}
cout << ans << endl;
return 0;
}