Pick定理:如果一个简单多边形(以下称为“多边形”)的每个顶点都是直角坐标平面上的格点,则称该多边形为格点多边形.若一个面积为S的格点多边形,其边界上有a个格点,内部有b个格点,则Sa/2+b-1.

强迫孩子们接受无法说出道理的东西,很容易打击孩子们的求知欲望和学习兴趣.我经过反复琢磨,找到一个非常浅显的办法,既能够形象的解释Pick定理的道理,又能让看清Pick定理的本质.整个解释只需用到一个很浅显的预备知识:“多边形外角和等于一个周角”.

以下图的格点多边形ABCDE为例,其边界上有a个格点,内部有b个格点.

设想在平面的每个格点放一个铁饼,满足:

(1)每个铁饼都一样大的圆(或者说是圆柱),圆心是格点;

(2)每个铁饼都恰好重1克;

(3)每个铁饼的半径都做得尽量小——不仅铁饼之间互相不重叠,而且还使得多边形ABCDE内部的每个格点上所放的铁饼,都完全落在该多边形的内部;多边形ABCDE外部的每个格点上所放的铁饼,都完全落在该多边形的外部.

首先,考虑多边形ABCDE的边界以内的铁的总重.

这可以分如下两类进行计算: 第一类:其内部格点上放的铁饼.此类总重显然是b克.第二类:其边界格点上放的铁饼落在边界以内的铁.假设每个边界格点上放的铁饼,恰有一半落在边界以内,则总重为a/2克.但显然在每个顶点处放的铁饼,落在边界以内的铁实际不足一半,比一半还少该顶点的一个外角内所含的铁,所有这种外角内所含的铁恰好拼成一块完整的铁饼(因为多边形外角和等于一个周角).所以后一类铁的总重是a/2-1克.

因而,多边形ABCDE的边界以内的铁的总重是a/2+b-1克.

接下来,设想将平面上所有铁饼全部熔化,打造成一张厚薄均匀的铁板盖在整个平面上.这可以看作是:将每个单位正方形的四个顶点处的每个90°的扇形铁饼,熔化在这个正方形内部,故熔化后每个单位正方形内的铁都是1克.进而,平面上任意图形,其面积是多少,其内部就含多少克铁.

因而,熔化并重新打造后,多边形ABCDE的边界以内的铁的总重是S克.

最后,注意到这个熔化并重新打造的过程,可以看成是:每个格点处的铁饼中的铁,按(以该格点为中心)放射状的方式重新适当改动位置而已.这样的改动,不会使格点多边形ABCDE外面的铁跑到多边形内部,也不会使内部的铁跑到外部.

即熔化并重新打造的前后,多边形ABCDE的边界以内的铁的总重是不变的,所以Sa/2+b-1.

参考:http://blog.sina.com.cn/s/blog_a1c409e30101efme.html

格点多边形面积公式(Pick定理)的一个形象解释(转)的更多相关文章

  1. POJ1265:Area(多边形面积公式+pick公式) 好题

    题目:http://poj.org/problem?id=1265 题意 : 给你一个点阵,上边有很多点连成的多边形,让你求多边形内部的点和边界上的点以及多边形的面积,要注意他每次给出的点并不是点的横 ...

  2. POJ1265——Area(Pick定理+多边形面积)

    Area DescriptionBeing well known for its highly innovative products, Merck would definitely be a goo ...

  3. Water Testing【皮克定理,多边形面积,线段上点的数目】

    Water Testing 传送门:链接  来源:UPC 9656 题目描述 You just bought a large piece of agricultural land, but you n ...

  4. UVa 10088 - Trees on My Island (pick定理)

    样例: 输入:123 16 39 28 49 69 98 96 55 84 43 51 3121000 10002000 10004000 20006000 10008000 30008000 800 ...

  5. HDU 3775 Chain Code pick定理

    pick定理:一个计算点阵中顶点在格点上的多边形面积公式:S=a+b÷2-1,其中a表示多边形内部的点数,b表示多边形边界上的点数,s表示多边形的面积. 思路:http://blog.csdn.net ...

  6. poj 1265&&poj 2954(Pick定理)

    Area Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 5811   Accepted: 2589 Description ...

  7. POJ 1265 Area (pick定理)

    题目大意:已知机器人行走步数及每一步的坐标变化量,求机器人所走路径围成的多边形的面积.多边形边上和内部的点的数量. 思路:叉积求面积,pick定理求点. pick定理:面积=内部点数+边上点数/2-1 ...

  8. LightOJ 1418 Trees on My Island (Pick定理)

    题目链接:LightOJ 1418 Problem Description I have bought an island where I want to plant trees in rows an ...

  9. HDU - 2036 改革春风吹满地 叉乘法求多边形面积

    改革春风吹满地 “ 改革春风吹满地, 不会AC没关系; 实在不行回老家, 还有一亩三分地. 谢谢!(乐队奏乐)” 话说部分学生心态极好,每天就知道游戏,这次考试如此简单的题目,也是云里雾里,而且,还竟 ...

随机推荐

  1. Android-NDK编译:cocos2d-x

    看了下 cocos2d-x 3.0 alpha1 几个关于android的脚本 cocos2d-x\tools\project-creator\create_project.py cocos2d-x\ ...

  2. Android开发:《Gradle Recipes for Android》阅读笔记1.2

    在android开发中会需要配置使用app的android SDK的最低版本和目标版本,这个是bulidl.gradle的android模块设置.默认有以下几个设置: applicationId,这个 ...

  3. 如何在Java的Filter中注入Service???

    今天在做用户使用cookie自动登录的时候,发现在LoginFilter中读取到cookie以后要进行查询数据库然后进行用户名和密码的比对,查询数据库肯定要用到Service和Dao,一开始我以为在s ...

  4. 1060 最复杂的数(反素数玄学dfs)

    1060 最复杂的数 题目来源: Ural 1748 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 把一个数的约数个数定义为该数的复杂程度,给出一个n,求1-n中 ...

  5. 安装和配置jenkins

    1.首先准备java环境,安装JDK 2.下载jenkins至Linux服务器 sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkin ...

  6. 在cli命令行上显示当前数据库,以及查询表的行头信息

    在$HIVE_HOME/conf/hive-site.xml文件下加入以下配置文件 <property> <name>hive.cli.print.header</nam ...

  7. vmware虚拟机网络模式

    转自:https://blog.csdn.net/u013201439/article/details/51491746 前言 有时因为工作和学习需要,我们安装了虚拟机,但是却发现不理解虚拟机的网络连 ...

  8. jmeter 测试restful接口

    jmeter 测试restful接口,JSON数据格式 1.添加线程组 2.添加HTTP信息头管理器 请求发送JSON数据格式参数,需要设置Content-Type为application/json ...

  9. JAVA学习笔记----【转】 java.toString() ,(String),String.valueOf的区别

    在java项目的实际开发和应用中,常常需要用到将对象转为String这一基本功能.本文将对常用的转换方法进行一个总结. 常用的方法有Object#toString(),(String)要转换的对象,S ...

  10. requirejs源码分析: config中shim

    shim处理的源码: //Merge shim                 if (cfg.shim) {                     eachProp(cfg.shim, funct ...