看八戒在做这个题,我也做了做。。

坑很多,还是要注意细节。不得不吐槽,难道又到了计算几何只能套模板否则就一串WA的情况了么!

要不是八戒做出来了,这题我估计我也就扔到这里了。。哥不服啊~所以得做出来!

注意这个题,重复点、直线等关键词。还有,判断直线跟线段交点,需要先剪枝,就是判断这个线段端点跟直线端点叉乘是不是小于eps就行了。

)

e-
?(x):-(x))<eps)

)
{
    point q2;
    , count;
    , q2.x = rand() + offset_x, q2.y = rand() + offset_y; i < n; i++)
    ) % n])) && (p[i].x - q.x)*(p[(i + ) % n].x - q.x) < eps && (p[i].y - q.y)*(p[(i + ) % n].y - q.y) < eps)
        ) % n], q2) < -eps&&xmult(p[i], q, p[(i + ) % n])*xmult(p[i], q2, p[(i + ) % n]) < -eps)
        count++;
    ;
}

];
        memset(p, , ; i < num_of_point; i++)
        {
            cin >> p[i].x >> p[i].y;
            ];; i < num_of_line; i++)
        {
            line temp;
            cin >> temp.a.x >> temp.a.y >> temp.b.x >> temp.b.y;

point intersects[];
            memset(intersects, , ;

; i < num_of_point; i++)
            {
                ], temp.a, temp.b) < eps)], temp.a, temp.b)) < eps)] };
                    point inter = intersection(a, temp);
                    intersects[count_of_intersects++] = inter;
                }
            }
            sort(intersects, intersects + count_of_intersects, cmp);
            ;
            ; i < count_of_intersects - ; i++)
            {
                point center = { (intersects[i].x + intersects[i + ].x) / , (intersects[i].y + intersects[i + ].y) /  };
                , p, (, ();
                 || flag == )
                    ans += dist(intersects[i], intersects[i + ]);
            }
            cout << fixed << setprecision() << ans << endl;
        }
    }
    ;
}

poj2462的更多相关文章

随机推荐

  1. 根据条件决定是否为input设置只读属性

    代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <tit ...

  2. 大型运输行业实战_day05_1_登录+注销+表单重复提交+登录拦截器

    1.登录 登录实现如下步骤: 1.在首页中添加登录按钮 html代码如下: <%@ page contentType="text/html;charset=UTF-8" la ...

  3. 使用Navicat Premium连接mysql数据库

    Navicat Premium是一个可多重连接的数据库管理工 具,它可让你以单一程序同时连接. Navicat Premium 使你能简单并快速地在各种数据库系统间传输数据,或传输一份指定 SQL 格 ...

  4. vs code 插件推荐

    通用插件 HTML Snippets 超级实用且初级的 H5代码片段以及提示 HTML CSS Support 让 html 标签上写class 智能提示当前项目所支持的样式新版已经支持scss文件检 ...

  5. Python globals() 函数

    Python globals() 函数  Python 内置函数 描述 globals() 函数会以字典类型返回当前位置的全部全局变量. 语法 globals() 函数语法: globals() 参数 ...

  6. 鼠标经过的图片高亮显示,其余变暗效果[xyytit]

    初始代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...

  7. VC++ 定时器使用总结

    VC++    WM_TIMER   定时器使用方法       在编程时,会经常使用到定时器.使用定时器的方法比较简单,通常告诉Windows一个时间间隔,然后WINDOWS以此时间间隔周期性触发程 ...

  8. C#6.0新特性:var s = $"{12}+{23}={12+23}"

    为什么会出现$符号,c#6.0才出现的新特性 var s = string.Fromat("{0}+{1}={2}",12,23,12+23) 用起来必须输入string.From ...

  9. RPM包制作方法

    一.RPM介绍 RPM 前是Red Hat Package Manager 的缩写,本意是Red Hat 软件包管理,顾名思义是Red Hat 贡献出来的软件包管理:现在应为RPM Package M ...

  10. DB2数据库常用命令数据库学习

    DB2数据库常用命令数据库学习你可以用 get snapshot for locks on XXX 看是那个表锁了,再从相关的操作去查原因吧 db2pd -d 库名 -locks和db2pd -d 库 ...