zoukankan      html  css  js  c++  java
  • FOJ Problem 1015 土地划分

    Problem 1015 土地划分

    Accept: 823    Submit: 1956
    Time Limit: 1000 mSec    Memory Limit : 32768 KB

     Problem Description

    在Dukeswood这块土地上生活着一个富有的农庄主和他的几个孩子。在他临终时,他想把他的土地分给他的孩子。他有许多农场,每个农场都是一块矩形土地。他在农场地图上划上一些直线将矩形分成若干块。当他划直线时,他总是从矩形边界上的某一点划到另一个矩形边界上的点,这条线的结束点将成为下一条线的起始点。他划线时从不会让任三线共点。例如图1是某一种划分结果。


    图1

    划分的起始点和结束点均以五角星标记。当他完成划分后,他想要数一下划出的土地的块数以确保每个孩子都有一块地。例如,图1中土地被划分成18块。然而这个庄主由于年迈常会数错,因而他寻求你的帮助。

    请写一个程序,输入原来的土地尺寸及线段的位置,输出划分出的土地块数。

     Input

    输入文件有多组数据组成。每组数据格式如下:
    第一行输入地图的宽度w (1<=w<=1000)和高度 h (1<=h<=1000),均为整数。
    第二行输入线段数L (1<=L<=50)。
    以下L+1行每行一个整数坐标(Xi,Yi),庄主划的线段为(Xi,Yi)-(Xi+1,Yi+1),i=1,2,…,L。当然(Xi,Yi)必定在矩形的边界上。
    最后一组数据w=h=0,标志文件结束,不需要处理。

     Output

    对于给定的输入,输出一行仅含一个数,即划分出的土地块数。

     Sample Input

    18 12
    8 2
    0 6
    12 10
    0 18
    9 15
    12 0
    6 14
    0 10
    12 0
    9 7
    6 6
    2 0
    5 6
    7 3
    0 3
    3 0
    3 6
    0 5
    0 0

     Sample Output

    18 11
     
     
       计算几何的题目(需要有一定的知识储备)http://blog.csdn.net/y990041769/article/details/38258761
    这道题考我们判断线段交点怎么判断(使用快速排斥&&跨立实验!)http://blog.csdn.net/xia842655187/article/details/51469130
    这就是用到数学上的向量叉乘。就是判断当前线段与之前的线段有几个交点,结果就是增加结点个数加一块

                若 P × Q > 0,则 P 在 Q 的顺时针方向

                若 P ×Q < 0, 则 P 在 Q 的逆时针方向

                若 P × Q = 0,则 P 与 Q 共线,但不确定 P, Q 的方向是否相同

    http://blog.csdn.net/freezhanacmore/article/details/7894751

  • 相关阅读:
    测序分析软件-phred的安装
    测序分析软件-trimmomatic的记录
    linux-ubuntu下fastQC的安装及使用
    linux 下统计文本行数
    linux .gz文件 解压缩命令
    启用谷歌浏览器Adobe Flash Player
    「三代组装」使用Pilon对基因组进行polish
    用BUSCO来评估基因组完整性
    linux tar.gz 文件解压缩
    查看jobs详情
  • 原文地址:https://www.cnblogs.com/wshyj/p/6481873.html
Copyright © 2011-2022 走看看