Time Limit: 10 second
Memory Limit: 2 MB

问题描述
同一平面内有n(n≤500)条直线,已知其中p(p≥2)条直线相交与同一点,则这n条直线最多能将平面分割成多少个不同的区域?

Input

两个整数n(n≤500)和p(2≤p≤n)。

Output

一个整数,代表最多分割成的区域数目

Sample Input

12 5

Sample Output

73

【题目链接】:http://noi.qz5z.com/viewtask.asp?id=9303

【题解】

先考虑那P条相交于一点的线;
它们会形成2*p个平面;
然后再考虑1条一条的增加线段;
设再加一条线段之前线段树为i;
则最好的情况是这条新加的线段和每条线段都相交;
这样又会多出i+1个平面来;

则有fi+1=fi+i+1;
这样就搞出递推公式了;

【完整代码】

#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <set>
#include <map>
#include <iostream>
#include <algorithm>
#include <cstring>
#include <queue>
#include <vector>
#include <stack>
#include <string>
using namespace std;
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
#define LL long long
#define rep1(i,a,b) for (int i = a;i <= b;i++)
#define rep2(i,a,b) for (int i = a;i >= b;i--)
#define mp make_pair
#define pb push_back
#define fi first
#define se secondtypedef pair<int,int> pii;
typedef pair<LL,LL> pll;void rel(LL &r)
{r = 0;char t = getchar();while (!isdigit(t) && t!='-') t = getchar();LL sign = 1;if (t == '-')sign = -1;while (!isdigit(t)) t = getchar();while (isdigit(t)) r = r * 10 + t - '0', t = getchar();r = r*sign;
}void rei(int &r)
{r = 0;char t = getchar();while (!isdigit(t)&&t!='-') t = getchar();int sign = 1;if (t == '-')sign = -1;while (!isdigit(t)) t = getchar();while (isdigit(t)) r = r * 10 + t - '0', t = getchar();r = r*sign;
}//const int MAXN = x;
const int dx[9] = {0,1,-1,0,0,-1,-1,1,1};
const int dy[9] = {0,0,0,-1,1,-1,1,-1,1};
const double pi = acos(-1.0);int n,p;int main()
{//freopen("F:\\rush.txt","r",stdin);rei(n);rei(p);LL ans = 2*p;rep1(i,p+1,n)ans = ans+i;cout << ans << endl;return 0;
}

转载于:https://www.cnblogs.com/AWCXV/p/7626899.html

【9303】平面分割相关推荐

  1. 29 基于PCL的点云平面分割拟合算法技术路线(针对有噪声的点云数据)

    0 引言 最近项目中用到了基于PCL开发的基于平面的点云和CAD模型的配准算法,点云平面提取采用的算法如下. 1 基于PCL的点云平面分割拟合算法 2 参数及其意义介绍 (1)点云下采样 1. 参数: ...

  2. HDU1290 献给杭电五十周年校庆的礼物 平面分割空间问题

    点击打开链接 献给杭电五十周年校庆的礼物 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Oth ...

  3. 平面分割 题解(1.16 递推模拟)

    平面分割 代码一行,解析一箱~~ 解析 计f[i]:从1到i累加之和 先假设最好情况,p=2: 此时第一条会增加1个 第二条与第一条相交,再加2个 第三条与前2条相交,再加3个 - 故n条时共增加f[ ...

  4. 数学 —— 计算几何 —— 平面分割问题

    [直线分平面问题] 问题:n条直线,最多可以把平面分为多少个区域. 解:当有n-1条直线时,平面最多被分成了f(n-1)个区域.则第n条直线要是切成的区域数最多,就必须与每条直线相交且不能有同一交点. ...

  5. 3d激光雷达开发(平面分割)

    [ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 平面分割是点云数据经常需要处理的一个功能.在很多场景下面,平面数据都是没有用的.这个时候需要考虑 ...

  6. Open3d之点云平面分割

    Open3D还支持使用RANSAC从点云中分割几何图元. 要查找点云中最有可能存在的平面,我们使用segement_plane函数. 该方法具有三个参数:destance_threshold定义了一个 ...

  7. 平面分割(直线、面、折线)

    直线分割平面   求 n + 1 n+1 n+1条直线最多可以将平面分割成几部分,此时已知前 n n n条直线以将平面分割成了 a n a_n an​个平面,那么新加入的这一条直线最多可以和前 n n ...

  8. 蓝桥杯真题:平面分割

    第一次做几何题: 看到了一篇十分好的推导,原文请见: 第十一届蓝桥杯A组省赛平面分割_Alan_Lowe-CSDN博客_蓝桥杯平面分割 也有一个小的公式总结,原文请见: [蓝桥杯]平面分割_木又可可的 ...

  9. HDU 1290 献给杭电五十周年校庆的礼物 平面分割球

    献给杭电五十周年校庆的礼物 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) To ...

最新文章

  1. Nagios的安装和基本配置(二:Nagios-Server的安装)
  2. 006_url-pattern配置
  3. tableau linux无网络安装_四十二、Linux网络管理,软件安装,进程管理总结
  4. nginx1.10.3 php7.0,centos7.2源码安装php7.0.9和nginx1.10.3服务器
  5. leetcode —— 1319. 连通网络的操作次数
  6. ora-01950:对表空间XXX无权限
  7. 工具:sql server profiler(分析器)
  8. 4月13日调整人人商城小程序用户登录灰头像,getUserProfile小程序登录接口适配比较简单的方法
  9. 计算机毕业论文java毕业设计成品源码网站基于SSM实现的仓库管理系统
  10. 计算机程序员求职信英语作文,程序员英文求职信范文
  11. Legend of Mir(传奇)官方源码学习2、运行试玩及GM命令
  12. 一个UE4崩溃问题以及解决方案
  13. 使用FFMPEG3.4.2版本进行视频的解码为YUV格式
  14. tif文件批量转png
  15. 帝国cms php替换,帝国cms怎么替换网址域名
  16. 星起航:抖音小店截流是什么,怎么玩?
  17. 四年级下册用计算机做的题,四年级下册数学用计算器计算练习题
  18. ngrok私有服务搭建(docker交叉编译)
  19. 《认知觉醒》-潜意识
  20. explain 中ken_len作用

热门文章

  1. 用java单源最短路径问题_单源最短路径-贪心算法
  2. linux运维笔试题目,linux运维相关的笔试题目_笔试题目
  3. linux ip地址漂移,Linux 实现高可用性(HA) —之ip 漂移方法(vrrp)
  4. 实用的it知识学习_怎样能更快更好的学习好书法?分享一些比较实用的理论知识...
  5. 160 - 31 cracking4all.2
  6. 平院实训门禁系统导入
  7. 计算机公式column,函数公式的左膀右臂:ROW、COLUMN函数知多少
  8. ffmpeg 命令画中画效果
  9. linux 内核配置 dns,linux bind dns简单配置
  10. html选择器_css的9个常用选择器