大榕树——让我们共成长!
大榕树 myDrs.org
您的位置:大榕树 \ 编程       |  Logo语言   |  Pascal语言   |  信息学奥赛   |  高考保送    |  HTML版本
|  Pascal语言>>Pascal练习>>摄影师的烦恼         本站全文搜索: 友情提示:

摄影师的烦恼
http://www.mydrs.org  8/6/2001  大榕树


【问题描述】

  摄影师Tension在他的3D工作室里布置了一些布景(假设所有的布景都是正四棱柱,并且都直接放在地板上)。
  为了描述这些布景的位置,我们在地板上建立了直角坐标系,原点O处是Tension和他的照相机。对于每一个正四棱柱的布景,用它的底面正方形的中心坐标(Xc,Yc)来标识它的位置,用底面边长d和棱柱的高h来标识它的形状(如图)。同时,每一布景的放置都是规则的,也就是说,所有棱柱底面的棱都平行于坐标轴。当然,任意两个布景(正四棱柱)是不可能有重叠的部分。
           
  对于站在坐标原点O的Tension而言(Tension趴在地上,高度视为0),一个四棱柱表面上的某个点,当且仅当它与原点的连线(也就是观察者的视线)不再穿过任何四棱柱的表面(包括棱和顶点)时,才被认为是可见的;如果一个四棱柱表面上存在可见的点,那么我们就认为这个四棱柱是可见的,这时,Tension就可以从照相机里看到这个布景(全部或者一部分)。

  当Tensoin布置完这些布景之后,他想要了解从他所站的位置到底能够看到多少布景,但是当布景相当多的时候,这着实让Tension苦恼。而您的任务,就是利用程序求出在坐标原点O可见的四棱柱的个数m。
【输入输出】

  输入文件visible.in的第一行是一个正整数N,表示正四棱柱的总数。
  从第2行至第N+1行,每行各有4个正整数Xi,Yi,Di,Hi,用空格分隔开,表示一个正四棱柱的中心坐标、底边长和高。
  输出文件visible.out只有一个整数m,表示可见的正四棱柱的个数。
【数据说明】

  所有四棱柱的底面顶点坐标(x,y)都满足:
  0<x≤65000,0<y≤65000;(也就是说,所有坐标都在第一象限内)
  对于四棱柱的形状的限制有 0<d≤65000,0<h≤65000;
  布景的总数为N,且1≤N≤1000。
【评分说明】

  只有完全正确的输出才能够获得测试点的分数。


作 者:国家集训队
来 源:冬令营试题
共有4584位读者阅读过此文

  • 上篇文章猜单词游戏
  • 下篇文章高性能计算机

  • 发送邮件
    保存页面 打印文章 HTML版本 发表评论

    □- 近期热门文章 □- 相关文章
    1. NOIP2006竞赛大纲 [8307]
    2. 七类高中生具有保送资格 [5911]
    3. NOI2006获奖选手名单 [4956]
    4. 关于举办NOIP2006模拟赛的通告 [4107]
    5. Turbo Pascal各语句运行速... [3595]
    6. Turbo王者归来新Delphi免费... [3182]
    7. IOI2006我国4名选手全部获得金... [2946]
    8. 关于APIO2007与IOI2007... [2764]
    9. noip倒计时 by 枯叶蝴蝶 [2684]
    10. 朱泽园:思想上的金牌更重要 [2169]
    高性能计算机
    摄影师的烦恼
    猜单词游戏
     

    关于本站 | 合作伙伴 | 联系方式
    大榕树 版权所有 ©1999-2006 www.myDrs.org 闽ICP备05000721号