问题描述

  平面上有n条折线,问这些折线最多能将平面分割成多少块?

样例输入

1

2

样例输出

2

7

答案是:

2n ( 2n + 1 ) / 2 + 1 - 2n

= 2 n^2  n + 1

当第N次添加时,前面已经有2N-2条直线了,所以第N次添加时,第2N-1条直线和第2N条直线都各能增加2*(n-1)+1 个平面。

所以第N次添加增加的面数是2[2(n-1) + 1] = 4n - 2 个。因此,总面数应该是

1 + 4n(n+1)/2 - 2n = 2n2 + 1

如果把每次加进来的平行边让它们一头相交

当第N次添加时,前面已经有2N-2条直线了,所以第N次添加时,第2N-1条直线和第2N条直线都各能增加2*(n-1)+1 个平面。

所以第N次添加增加的面数是2[2(n-1) + 1] = 4n - 2 个。因此,总面数应该是

1 + 4n(n+1)/2 - 2n = 2n2 + 1

如果把每次加进来的平行边让它们一头相交

则平面1、3已经合为一个面,因此,每一组平行线相交后,就会较少一个面,

在ACM2050前传中已经给出了直线的时平面数,而折线看成是两条直线,便可利用上一篇的公式了。

当第N次添加时,前面已经有2N-2条直线了,所以第N次添加时,第2N-1条直线和第2N条直线都各能增加2*(n-1)+1 个平面。

所以第N次添加增加的面数是2[2(n-1) + 1] = 4n - 2 个。因此,总面数应该是

1 + 4n(n+1)/2 - 2n = 2n^2 + 1 

如果把每次加进来的平行边让它们一头相交

则平面1、3已经合为一个面,因此,每一组平行线相交后,就会较少一个面.

#include<stdio.h>

int main()

{

int T,n;

scanf("%d",&T);

while(T--&&scanf("%d",&n)!=EOF)

printf("%d\n",2*n*n-n+1);

return 0;

}

ACM2050的更多相关文章

  1. ACM2050前传

    n在一个平面上有一个圆和n条直线,这些直线中每一条在圆内 同其他直线相交,假设没有3条直线相交于一点,试问这些直线 将圆分成多少区域.   使用递归 F(1)=2; F(n) = F(n-1)+n; ...

随机推荐

  1. MATLAB曲线绘制

    一. 二维数据曲线图1.1 绘制 单根二维曲线plot 函数的基本调用 格式为:plot(x,y) 其中x和y为长度相同的向量,分别用于存储x坐标 和y坐标数据. 例1-1 在0≤x≤2p区间内,绘制 ...

  2. ubuntu创建用户

    Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户的账号 一方面可以帮助系统管理员对使用系统的用户进 ...

  3. LA 6187 - Never Wait for Weights 并查集的带权路径压缩

    只有一个地方需要注意: 设节点a的根为u,b的跟为v,则:a = u + d[a];  b = v + d[b]; 已知:b-a=w.所以v - u = d[a] - d[b] + w; 在合并两个集 ...

  4. [转载]浅析Java中的final关键字

    浅析Java中的final关键字 谈到final关键字,想必很多人都不陌生,在使用匿名内部类的时候可能会经常用到final关键字.另外,Java中的String类就是一个final类,那么今天我们就来 ...

  5. Android开发之“点9”

    “点九”是andriod平台的应用软件开发里的一种特殊的图片形式,文件扩展名为:.9.png智能手机中有自动横屏的功能,同一幅界面会在随着手机(或平板电脑)中的方向传感器的参数不同而改变显示的方向,在 ...

  6. WIFI环境下Android手机和电脑通信

    前面已经写过一篇java实现最基础的socket网络通信,这篇和之前那篇大同小异,只是将客户端代码移植到手机中,然后获取本机IP的方法略有不同. 先讲一下本篇中用到Android studio的使用吧 ...

  7. gulp 使用mailgun服务器发送邮件

    1.首先你需要创建一个 mailgun 账户,没有请去注册一个. 注册之后会有 mailgun 会给你一个默认的子域名,你就可以使用这个子域名去发送邮件了,如下图: 2.gulp创建任务: var s ...

  8. linux delete files older than 3 days

    4 down vote accepted This is easy enough (although note that this goes by a modification time more t ...

  9. Akka的Actor模型及使用实例

    本文的绝大部分内容转载自rerun.me这一blog,老外写的东西就是好啊. ACTORS介绍 Anyone who has done multithreading in the past won't ...

  10. LwIP源代码文件目录解析

    1 -- LwIP源代码文件目录 root@motadou:/home/motadou/lwip/lwip-1.4.1# tree . ├── CHANGELOG ├── COPYING ├── do ...