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


Posted in Javascript onOctober 12, 2012
<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

   10

10

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倍 

Javascript 相关文章推荐
JS实现一个按钮的方法
Feb 05 Javascript
js实现顶部可折叠的菜单工具栏效果实例
May 09 Javascript
jquery实现弹出层效果实例
May 19 Javascript
学习JavaScript设计模式(多态)
Nov 25 Javascript
jQuery实现图片文字淡入淡出效果
Dec 21 Javascript
js编写简单的计时器功能
Jul 15 Javascript
深入掌握 react的 setState的工作机制
Sep 27 Javascript
Node之简单的前后端交互(实例讲解)
Nov 14 Javascript
Vue通过Blob对象实现导出Excel功能示例代码
Jul 31 Javascript
解决vue-router路由拦截造成死循环问题
Aug 05 Javascript
WebRTC记录音视频流(web技术分享)
Feb 24 Javascript
解决vue中provide inject的响应式监听
Apr 19 Vue.js
利用谷歌地图API获取点与点的距离的js代码
Oct 11 #Javascript
关于JS控制代码暂停的实现方法分享
Oct 11 #Javascript
JS判断页面加载状态以及添加遮罩和缓冲动画的代码
Oct 11 #Javascript
js函数的延迟加载实现代码
Oct 11 #Javascript
javascript中方便增删改cookie的一个类
Oct 11 #Javascript
js事件(Event)知识整理
Oct 11 #Javascript
JavaScript高级程序设计(第3版)学习笔记13 ECMAScript5新特性
Oct 11 #Javascript
You might like
B2K与车机的中波PK
2021/03/02 无线电
php实现ping
2006/10/09 PHP
浅谈PHP变量作用域以及地址引用问题
2013/12/27 PHP
PHP中浮点数计算比较及取整不准确的解决方法
2015/01/09 PHP
php利用gd库为图片添加水印
2016/11/09 PHP
php微信开发之图片回复功能
2018/06/14 PHP
Yii框架引入coreseek分页功能示例
2019/02/08 PHP
jquery 选择器引擎sizzle浅析
2013/02/06 Javascript
如何从jQuery的ajax请求中删除X-Requested-With
2013/12/11 Javascript
仿百度联盟对联广告实现代码
2014/08/30 Javascript
jQuery时间轴插件使用详解
2015/07/16 Javascript
javascript动画算法实例分析
2015/07/31 Javascript
jquery结婚电子请柬特效源码分享
2015/08/21 Javascript
Javascript技术栈中的四种依赖注入详解
2016/02/23 Javascript
原生js实现addClass,removeClass,hasClass方法
2016/04/27 Javascript
JS实现上传图片的三种方法并实现预览图片功能
2017/07/14 Javascript
vue中各组件之间传递数据的方法示例
2017/07/27 Javascript
Vue高版本中一些新特性的使用详解
2018/09/25 Javascript
在Vue 中获取下拉框的文本及选项值操作
2020/08/13 Javascript
Python实现Linux中的du命令
2017/06/12 Python
PyCharm代码格式调整方法
2018/05/23 Python
Python机器学习k-近邻算法(K Nearest Neighbor)实例详解
2018/06/25 Python
Python Numpy计算各类距离的方法
2019/07/05 Python
python自动化测试之异常及日志操作实例分析
2019/11/09 Python
iPython pylab模式启动方式
2020/04/24 Python
django创建超级用户时指定添加其它字段方式
2020/05/14 Python
pycharm 关掉syntax检查操作
2020/06/09 Python
CSS3 3D制作实战案例分析
2016/09/18 HTML / CSS
mui几种页面跳转方式对比总结概括
2017/08/18 HTML / CSS
HTML5 canvas实现的静态循环滚动播放弹幕
2021/01/05 HTML / CSS
英国最大的网上药品商店:Chemist Direct
2017/12/16 全球购物
街道社区活动报告
2015/02/05 职场文书
2015年乡镇党务公开工作总结
2015/05/19 职场文书
少年犯观后感
2015/06/11 职场文书
2016年大学迎新晚会工作总结
2015/10/15 职场文书
日本动漫十大公认神作:第五现已全网禁播,《死亡笔记》在榜
2022/03/18 日漫