CCF 202006-1 线性分类器
2024-09-08 19:18:32
#include <iostream>
#include <bits/stdc++.h>
#include <string> using namespace std; typedef struct
{
int x;int y;char type;
}XY; vector<XY> xy;
int theta0,theta1,theta2;
bool AorB; bool topOrbelow(XY user)
{
if(theta0+theta1*user.x+theta2*user.y>0)
return true;
else
return false;
} int main()
{
int n,m;
cin>>n>>m;
XY temp;
while(n--)
{
cin>>temp.x>>temp.y>>temp.type;
xy.push_back(temp);
}
while(m--)
{
bool flag=true,flag0=false;
cin>>theta0>>theta1>>theta2;
for(int i=0;i<xy.size();i++)
{
if(i==0)
{
if(xy[i].type=='A')
{
if(topOrbelow(xy[i]))
flag0=true; //上分为A类
}
else
{
if(!topOrbelow(xy[i]))
flag0=true;
}
}
if(flag0)
{
if(!((topOrbelow(xy[i])&&xy[i].type=='A')||(!topOrbelow(xy[i])&&xy[i].type=='B')))
{
flag=false;
break;
}
}
else
{
if(!((topOrbelow(xy[i])&&xy[i].type=='B')||(!topOrbelow(xy[i])&&xy[i].type=='A')))
{
flag=false;
break;
}
}
}
if(flag)
cout<<"Yes"<<endl;
else
cout<<"No"<<endl;
}
}
最新文章
- ABP(现代ASP.NET样板开发框架)系列之8、ABP日志管理
- tyvj1468 清理垃圾
- SharePoint项目实践中如何实现非打破继承看上去很美的权限控制
- 与Java互操作
- django进行model字段的自定义
- 机器学习PR:k近邻法分类
- CentOS 7.2 安装 Docker 1.12.3 版
- java中如果需要精确的计算答案,请避免使用double类型与float类型
- Entify Framewrok - LINQ简单使用
- yum 安装软件时报Public key for * is not installed
- 【随手记-有空整理】Linux随手记
- squid和varnish的小结
- MySQL(九)之数据表的查询详解(SELECT语法)二
- Java基础总结--面向对象1
- Java图形界面学习---------简易登录界面
- python设计模式第八天【装饰器模式】
- CentOS 7升级Python到3.5后yum出错
- crm——stark组件核心原理
- 用Pyinstaller 实现py.转化为exe可执行文件----二维码实例
- Ubuntu 远程挂载windows的分区