Attention:
①注意vector的变量
②注意flag变量的初始化
#include<bits/stdc++.h>
using namespace std;
const int maxn = 1010;
struct node{
int x, y;
node(int x, int y) : x(x), y(y) {}
};
vector<node>A, B;
int main()
{
ios::sync_with_stdio(false);
int n, m;
cin >> n >> m;
int x, y;
char z;
for(int i = 1; i <= n; ++i){
cin >> x >> y >> z;
node fresh(x,y);
if(z == 'A') A.emplace_back(fresh);
else B.emplace_back(fresh);
}
int a, b, c, flag = 1;
for(int i = 1; i <= m; ++i){
flag = 1;
cin >> a >> b >> c;
int A_part = a + A.begin()->x * b + A.begin()->y * c > 0;
int B_part = a + B.begin()->x * b + B.begin()->y * c > 0;
for(const auto&x : A){
if(a + x.x * b + x.y * c > 0 != A_part)
flag = 0;
}
for(const auto&x : B){
if(a + x.x * b + x.y * c > 0 != B_part)
flag = 0;
}
if(flag) cout << "Y" << "e"<< "s" << "\n";
else cout << "N" << "o" << "\n";
}
return 0;
}