分享一道笔试题[有n个直线最多可以把一个平面分成多少个部分]

时间:2024-04-25 13:09:11 


<html>
题:<br />
有n个直线最多可以把一个平面分成多少个部分<br /><br />
线条数:<input type="text" id="line"/><br />
内交点:<label id="innerPoint"></label><br />
分割数:<label id="part" style="background:yellow;"></label><br />
<input type="button" onclick="calculate()" value="计算"/>
</html>
<script type="text/javascript">
function calculate(line)
{
var line = document.getElementById('line').value;
if(line == "")
{
line = 0;
document.getElementById('line').value = line;
}
var line = parseInt(line);
var innerPoint = line * (line -1) / 2;
var part = (Math.pow(line,2) + line)/2 + 1;//line + innerPoint + 1等于(线条数的平方+线条数)/2 + 1

document.getElementById('innerPoint').innerText = innerPoint;
document.getElementById('part').innerText = part;
}
</script>


说一下规律:

①最多分成的部分:线条数+内交点数+1

②内交点数=(线条数-1)的内交点数+(线条数-1),新添加的线条可以会与除他之外的线条有交点

③用递归求出内交点数,然后代入①计算

上面是正常的数学思维,下面说说我用的行测知识,就是我代码的东东

我列出了1~5条直线一些可用的参数:

直线数内交点外交点部分数

1  0  2  2

2  1  4   4

3  3  6   7

4  6  8  11

5 1010 16

发现,外交点是没有意义的,反正都是直线数的2倍

而部分数=直线数+内交点数+1

相邻直线个数内交点个数组成一个等差数列,这个等差数列公差为1,  1-0=1,3-1=2,6-3=3,10-6=4, 横向看1+0=1,2+1=3,3+3=6...但是这样还是用到了递归要求出上一个对应的内交点个数,于是纵向看规律,2*1=2 3*2=6 4*3=12...正好是内交点个数的2倍 

标签:n个直线,平面
0
投稿

猜你喜欢

  • 理清mysql外链的含义和命令

    2010-03-09 15:55:00
  • pytorch制作自己的LMDB数据操作示例

    2023-05-24 11:51:27
  • python面向对象实现名片管理系统文件版

    2022-11-25 16:27:45
  • Python Pyecharts绘制桑基图分析用户行为路径

    2022-06-07 02:47:57
  • python 中xpath爬虫实例详解

    2021-06-08 08:51:46
  • MySQL replace into 语句浅析(一)

    2024-01-25 21:47:57
  • Python Matplotlib中使用plt.savefig存储图片的方法举例

    2021-11-19 14:08:55
  • SQL Server Table中XML列的操作代码

    2024-01-23 14:21:11
  • 解决IDEA GIT记录无法查看提交文件的问题

    2022-12-08 01:46:25
  • Mootools 1.2教程(3)——数组使用简介

    2008-11-17 20:16:00
  • Web内容写作:得到更好稿件的头15条规则[译]

    2011-06-09 14:38:00
  • python获取时间及时间格式转换问题实例代码详解

    2021-12-20 12:46:20
  • Go语言Handler详细说明

    2024-04-27 15:32:50
  • Python实现针对中文排序的方法

    2022-04-20 23:21:51
  • 详解如何在ChatGPT内构建一个Python解释器

    2022-06-18 21:37:38
  • Vue组件设计之多列表拖拽交换排序功能实现

    2024-04-27 15:49:28
  • java连接mysql数据库详细步骤解析

    2024-01-19 15:55:25
  • Python函数式编程指南(四):生成器详解

    2023-08-23 05:50:02
  • python里读写excel等数据文件的6种常用方式(小结)

    2021-04-09 08:11:52
  • JS创建对象的写法示例

    2024-04-16 08:54:48
  • asp之家 网络编程 m.aspxhome.com