当前位置: 首页 > news >正文

做交友网站赚钱吗东莞网站建设制作

做交友网站赚钱吗,东莞网站建设制作,网站做阿拉伯语的,小程序模板下载解题思路 大多数人都是用找规律的方法解决。这种方法好归好,但并不是真正的意义上的解决。 几何题相对来说比较考验空间想象力、思维能力。越复杂的几何结构,其相对应的想象力、思维能力的要求也会越来越大。 对于本题,如果你是先让 N​​…

 解题思路

大多数人都是用找规律的方法解决。这种方法好归好,但并不是真正的意义上的解决。

几何题相对来说比较考验空间想象力、思维能力。越复杂的几何结构,其相对应的想象力、思维能力的要求也会越来越大。

对于本题,如果你是先让 N​​ 条直线同时添加在平面上,再统计答案,那么计算起来将会十分困难。

所以我们考虑将直线一条一条加入到平面上,并考虑每条直线加入后对答案的贡献(即加入一条直线后可以额外将平面划分成产生多少个部分)。

在开始之前,我们首先要知道,当一个直线经过一个平面(区域)后,它必然会将该平面划分成两个新的区域。

起初(未添加任何直线之前)整个平面只有一个区域,那么加入了第 1​ 条直线后,该直线会将平面划分成两个新的区域。

现在一共有两个区域。当我们再加入第 2 条直线后,它必然会先经过一个区域,并把该区域划分成两个新的区域。接着,如果它与第 1条直线相交,那么它将会从原来的区域进入到新的区域,并也会把区域划分成两个新的区域。

假设第 2 条直线与第 1 条直线相交,那么我们加入第 3 条直线后有以下两种情况:

  • 第 3 条直线与第 1、2 条直线交于两个不同的点。
  • 第 3 条直线与第 1、2​ 条直线交于相同的点。

对于第一种情况,第 3 条直线会先后进入另外的两个区域,并将这两个区域全都划分成两个新的区域。

对于第二种情况,第 3 条直线只会从一个区域到达另一个区域,并将该区域划分成两个新的区域,之后它将不会再进入别的区域。

从上我们可得,当添加一条直线后,它首先就会将开始所在的区域划分成两个新的区域(答案个数加一);接着随着它的扩张,如果它与别的直线相交于一个点,那么它就会从原来的区域到达另一个的区域,并把另一个的区域划分成两个新的区域(答案个数加一);接着若它再与别的直线相交于另外一个点,它就将再次进入另一个区域,并将该区域也划分成两个新的区域(答案个数加一)。那么一条直线对答案的贡献 =​ 1​ +​ 它与别的直线的交点个数 。 

最后模拟上述过程,并统计答案即可。(注意一条边可能多次出现,别忘了去重)

ACcode:

#include<iostream>
#include<set>
using namespace std;
set<pair<int,int>>line;
int n,ans=1;
int calc(int a,int b){//那么一条直线对答案的贡献// ==1+它与别的直线的交点个数 。set<pair<double,double>>node;//记录(a,b)直线和其他直线交点个数 for(auto i:line){//遍历当已经存在的所有直线 int A=i.first,B=i.second;if(A==a)continue;//平行continue(平行造成的分割体现在return的+1)//画个简单的图就明白了 double x=1.0*(B-b)/(A-a);//交点的横坐标 double y=x*a+b;//交点的纵坐标 node.insert(make_pair(x,y));//入 }return node.size()+1;//那么一条直线对答案的贡献==1+它与别的直线的交点个数 。
}
int main(){cin>>n;for(int i=1;i<=n;i++){int a,b;cin>>a>>b;if(line.find(make_pair(a,b))!=line.end())//判重//因为可能输入多个(a,b)相同的组 continue;ans+=calc(a,b);line.insert(make_pair(a,b));}cout<<ans<<"\n";return 0;
}

http://www.lbrq.cn/news/2590651.html

相关文章:

  • 广州设计网站建设企点
  • 画册专业设计公司搜索引擎优化推广
  • 中小学学校网站建设免费建站系统官网
  • 网站编程培训机构网站建设的方法有哪些
  • b2c网站提供的服务有哪些成都网站seo外包
  • 四川网站设计首选柚米科技百度电脑版下载
  • 宜章网站建设手机游戏性能优化软件
  • wordpress4.8.1https德兴网站seo
  • 品牌营销策划书模板seo排名大概多少钱
  • wordpress首页调用评论专业seo培训学校
  • 移动网站趋势武威网站seo
  • 网站建设推广公司哪家权威软文网站有哪些
  • 深圳宝安做网站如何搜索关键词
  • 网站模板定制seo快速培训
  • 营销网站推广策略百度网盘网页版登录入口官网
  • 焦作建设网站哪家好百度电商推广
  • 盐城哪家专业做网站深圳百度推广客服
  • 用layui做的网站长沙推广公司
  • 做网站卖别人的软件可以吗关键词优化的五个步骤
  • 西安网站策划公司seo月薪
  • wordpress做商城网站免费发布推广的平台有哪些
  • web网站开发的流程天津seo外包
  • 东莞网站制作有名 乐云践新互联网推广是做什么的
  • 浙江网站建设模板网站广告推广软件
  • 深圳营销型网站建设怎么注册电商平台
  • 做旅游网站选什么空间网站维护推广的方案
  • 设计相关的网站百度知道官网
  • 企业网站如何提高成都百度推广代理公司
  • wordpress企业站实操昆明seocn整站优化
  • php完整网站开发源码关键词优化排名首页
  • shell脚本tcpdump抓取数据解析执行关机指令
  • PyCharm代码规范与代码格式化插件安装与使用:pylint和autopep8
  • CMake 命令行参数完全指南(2)
  • 接口测试用例的编写
  • JavaEE初阶第十三期:解锁多线程,从 “单车道” 到 “高速公路” 的编程升级(十一)
  • 机械臂的轨迹生成的多种方案