题目链接:poj2284 That Nice Euler Circuit 欧拉公式:如果G是一个阶为n,边数为m且含有r个区域的连通平面图,则有恒等式:n-m+r=2. 欧拉公式的推广: 对于具有k(k≥2)个连通分支的平面图G,有:n-m+r=k+1. 题意:给出连通平面图的各顶点,求这个欧拉回路将平面分成多少区域. 题解:根据平面图的欧拉定理“n-m+r=2”来求解区域数r. 顶点个数n:两两线段求交点,每个交点都是图中的顶点. 边数m:在求交点时判断每个交点落在第几条边上,如果一个交点落在…
                                                      That Nice Euler Circuit Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 1977   Accepted: 626 Description Little Joey invented a scrabble machine that he called Euler, after the great…
裸的判断线段相交…
题目链接 lrj训练指南 P260 //==================================================================== // 此题只需要考虑线段规范相交的情况 // 点在线段上不需要考虑端点情况 ; Point p[maxn],q[maxn*maxn]; int main() { ; &&n) { ;i<n;i++) p[i].read(),q[i]=p[i]; n--; int E=n,V=n; ;i<n;i++) ;…
题意:从左至右给你n个正方形的边长,接着这些正方形都按照旋转45度以一角为底放置坐标轴上,最左边的正方形左端点抵住y轴,后面的正方形依次紧贴前面所有正方形放置,问从上方向下看去,有哪些正方形是可以被看到的(如图) 题解:首先找到每个正方形左右端点的坐标转化为一条线段,接着寻找哪些线段被其他某些条线段覆盖,那这些被覆盖的线段就不能被看到了 寻找被覆盖的线段利用区间贪心,我们按照左端点升序.左端点相同右端点降序排序,则左端点一定被前面的线段覆盖,接着对于右端点使用单调栈的思想寻找可以看到的线段就好…
You are to write a program that has to decide whether a given line segment intersects a given rectangle. An example: line: start point: (4,9) end point: (11,2) rectangle: left-top: (1,5) right-bottom: (7,1)  Figure 1: Line segment does not intersect…
链接: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1010 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=29328#problem/B Area Time Limit: 2 Seconds       Memory Limit: 65536 KB       Special Judge Jerry, a middle school student, ad…
链接:id=2284">http://poj.org/problem?id=2284 题意:一个自己主动绘图的机器在纸上(无限大)绘图,笔尖从不离开纸,有n个指令,每一个指令是一个坐标,由于笔尖不离开纸,所以相邻的坐标会连有一条直线,最后画笔再回到起始点. 所以这个图是一个连通图,而且画笔走过的路径是一个欧拉回路. 如今问题来了.这个图形将平面分成了几部分. 思路:题目说明确一些就是告诉你一些几何信息问平面被分成了几部分.能够用欧拉公式来做 欧拉公式:如果图的顶点个数为n,边数为m,区域数…
欧拉定理: 简单多面体的顶点数V.棱数E及面数F间有关系有著名的欧拉公式:V-E+F=2. 设G为任意的连通的平面图,则v-e+f=2,v是G的顶点数,e是G的边数,f是G的面数.(引) 证明(?) 这题的做法就是模拟画线的过程,统计出画每一条线时与之前所有线的交点,将所有交点记录下来,将每一个顶点也记录下来.然后将点去重,得到点数.然后统计每一条线上有几个点,那么这条线就被分成了点数+1段,这样得到边数.最后根据公式算出面数. #include<cstdio> #include<cma…
UVALive - 3263 That Nice Euler Circuit (几何) ACM 题目地址:  UVALive - 3263 That Nice Euler Circuit 题意:  给出一个点,问连起来后的图形把平面分为几个区域. 分析:  欧拉定理有:设平面图的顶点数.边数.面数分别V,E,F则V+F-E=2  大白的题目,做起来还是非常有技巧的. 代码: /* * Author: illuz <iilluzen[at]gmail.com> * File: LA3263.cp…