题目描述:

给一个椭圆,上面有n个点,两两连接这n个点,得到的线段能把椭圆分为几个区域?

思路:

首先想想,n个点在椭圆边缘,每两个点两两连接有\(C^2_n\)条线段,这些线段交于很多点,求这些线段最多把椭圆分成几个部分。

考虑到欧拉公式:在平面图中\(V-E+F=2\),\(V\)为顶点数,\(E\)是边数,\(F\)是面数。我们要求的是\(F\),只要求\(E\)与\(V\)就行了。那么怎么求\(V\)呢?

考虑每一个顶点,以这个顶点为基础,不断向其他点发出对角线,在对角线左边的点是\(i\),右边的便是\(n-2-i\)个点,将左边的点与右边的点相互连接,便会与这条对角线相交,交点有\(i(n-2-i)\)个,但是由于对每个点都枚举,这样会重复计算。重复计算了几次呢?我们知道,要产生一个交点需要两条线段,也就需要四个顶点,也就是说,遍历所有顶点后,对这一个交点事实上我们重复了四次,因为有四个顶点贡献了它。同理,边重复计算了两次。因此:\(V=n+\frac{n}{4}\sum_{i=0}^{n-2}i(n-2-i)\),\(E=n+\frac{n}{2}\sum_{i=0}^{n-2}(i(n-2-i)+1)\)。

所以椭圆内的面有$F=E-V+2-1=\frac{n}{4}\sum_{i=0}^{n-2}i(n-2-i)+\frac{n(n-1)}{2}+1=\frac{n(n-3)(n-2)(n-1)}{24}+\frac{n(n-1)}{2}+1 $。

由于\(\sum_{i=1}^n i(n+1-i)=\frac{n(n+1)(n+2)}{6}\)

证明:

\(n=1\)时公式成立,假设n=k时也成立

\(a_k=1*k+2*(k-1)+...+k*1\)

\(n=k+1\)时,

\(a_{k+1}=1*(k+1)+2*k+...+(k+1)*1\)

\(a_{k+1}-a{k}=1+2+...+k+1=\frac{(k+2)(k+1)}{2}\),\(a_{k+1}=a_k+\frac{(k+2)(k+1)}{2}=\frac{n(n+1)(n+2)}{6}+\frac{(k+2)(k+1)}{2}=\frac{(k+1)(k+2)(k+3)}{6}\).

证毕

注意如果找规律,1,2,4,8,16当n等于6时为31就不对了。

顺便说一下:

n个顶点形成的图要边数最大,就要形成完全图,完全图的边数为\(\frac{n(n-1)}{2}\)

参考文章:

weijifen000,UVa10213 多少块土地,https://blog.csdn.net/weijifen000/article/details/82709741

划分土地(how many pieces of land)的更多相关文章

  1. UVa 10213 (欧拉公式+Java大数) How Many Pieces of Land ?

    题意: 一块圆形土地,在圆周上选n个点,然后两两连线,问把这块土地分成多少块? 分析: 首先紫书上的公式是错的,不过根据书上提供的思路很容易稍加修改得到正确答案! 然后推公式吧,这里用到平面图的欧拉公 ...

  2. UVA - 10213 How Many Pieces of Land?(欧拉公式 + 高精度)

    圆上有n个点,位置不确定.问这些点两两连接成的线段,最多可以把圆划分成多少块平面? 欧拉公式:V-E+F = 2,V是点数,E是边数,F是面数. 答案是F=C(n,4)+C(n,2)+1,看的别人推的 ...

  3. UVa 10213 How Many Pieces of Land ? (计算几何+大数)欧拉定理

    题意:一块圆形土地,在圆周上选n个点,然后两两连线,问把这块土地分成多少块? 析:这个题用的是欧拉公式,在平面图中,V-E+F=2,其中V是顶点数,E是边数,F是面数.对于这个题只要计算V和E就好. ...

  4. UVa 10213 How Many Pieces of Land ? (计算几何+大数)

    题意:一块圆形土地,在圆周上选n个点,然后两两连线,问把这块土地分成多少块? 析:这个题用的是欧拉公式,在平面图中,V-E+F=2,其中V是顶点数,E是边数,F是面数.对于这个题只要计算V和E就好. ...

  5. 【笔记篇】斜率优化dp(五) USACO08MAR土地购(征)买(用)Land Acquisition

    好好的题目连个名字都不统一.. 看到这种最大最小的就先排个序嘛= =以x为第一关键字, y为第二关键字排序. 然后有一些\(x_i<=x_{i+1},且y_i<=y_{i+1}\)的土地就 ...

  6. 【分割圆】Uva 10213 - How Many Pieces of Land ?

    一个椭圆上有N个点,将这n个点两两相连,问最多能将这个椭圆分成多少片. 理清思路,慢慢推. 首先我们要想到欧拉公式:V+E-F=2 其中V为图上的顶点数,E为边数,F为平面数. 计算时的可以枚举点,从 ...

  7. UVa 10213 - How Many Pieces of Land ?(欧拉公式)

    链接: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...

  8. (Step1-500题)UVaOJ+算法竞赛入门经典+挑战编程+USACO

    http://www.cnblogs.com/sxiszero/p/3618737.html 下面给出的题目共计560道,去掉重复的也有近500题,作为ACMer Training Step1,用1年 ...

  9. ACM训练计划step 1 [非原创]

    (Step1-500题)UVaOJ+算法竞赛入门经典+挑战编程+USACO 下面给出的题目共计560道,去掉重复的也有近500题,作为ACMer Training Step1,用1年到1年半年时间完成 ...

随机推荐

  1. PRINT_INITA整体偏移值传变量

    打印维护和整体偏移相关博文:打印维护和整体偏移相关简短问答.打印维护开放给客户端可进行微调,结果在客户端本地.(建议开放给客户打印维护功能,调整一次,以后都会走调整后的,通过不同任务名区分模版) 如果 ...

  2. Nginx - 安装并启动Nginx

    1 - 安装Nginx 官网步骤:http://nginx.org/en/linux_packages.html#RHEL-CentOS [Anliven@h202 ~]$ sudo vim /etc ...

  3. 【Docker学习之一】初始Docker

    一.云计算的概念 PaaS(Platform-as-a-Service:平台即服务),把应用服务的运行和开发环境作为一种服务.SaaS(Software-as-a-Service),意思为软件即服务, ...

  4. IntelliJ IDEA(2018.3.5) 设置编码为utf-8编码

    位置一: File->Settings->Editor->File Encodings   位置二: File->Other Settings->Default Sett ...

  5. Docker Overview

    Docker 是一个用于开发.交付和运行应用的开放平台,Docker 设计用来更快的交付你的应用程序.Docker 可以将你的应用程序和基础设施层隔离,并且还可以将你的基础设施当作程序一样进行管理.D ...

  6. js精度缺失问题

    /** ** 加法函数,用来得到精确的加法结果 ** 说明:javascript的加法结果会有误差,在两个浮点数相加的时候会比较明显.这个函数返回较为精确的加法结果. ** 调用:accAdd(arg ...

  7. 【基于onenet-edp的文件传输】1、调试上报数据点和端对端透传

    onenet-edp上报数据点和端对端透传 一.前言 edp是onenet用于tcp设备定制的一套协议,能够灵活地实现数据上报和透传: 二.准备工作 1.找到edp页面 进入工作台后,找到多协议接入, ...

  8. RT1052 BootLoader总结

    RT1052 BootLoader总结‍ 概述 Bootloader涉及到的RT1052单片机资源有:Cache,ram,外部SDRAM,ARM7汇编指令,外部dataFlash. 升级功能涉及到的其 ...

  9. (九)pdf的构成之文件体(content属性)

    content属性简单当成一个流来处理 流内部属一个画笔,下面介绍画笔属性 文本对象: BT    文本开始 ET    文本结束   文本状态:       Tc    字符之间的距离       ...

  10. 删除elasticsearch 30天前的所有索引

    我的索引格式为 xxx-xxx-xxx-2019.06.27 xxx-xxxx-2019.06.27 脚本思路: 获取目前 es上所有索引,以日期进行拆分,然后用索引时间对比一个月前的日期,日期小于一 ...