分享一道笔试题[有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 相关文章推荐
JavaScript Eval 函数使用
Mar 23 Javascript
用jquery写的一个万年历(自写)
Jan 20 Javascript
jquery图片切换插件
Mar 16 Javascript
JS常见问题之为什么点击弹出的i总是最后一个
Jan 05 Javascript
详解JS构造函数中this和return
Sep 16 Javascript
Vue v2.4中新增的$attrs及$listeners属性使用教程
Jan 08 Javascript
对vue中v-on绑定自定事件的实例讲解
Sep 06 Javascript
vue仿element实现分页器效果
Sep 13 Javascript
vue 本地服务不能被外部IP访问的完美解决方法
Oct 29 Javascript
详解element-ui中el-select的默认选择项问题
Aug 02 Javascript
Vue修改项目启动端口号方法
Nov 07 Javascript
Nuxt配置Element-UI按需引入的操作方法
Jul 06 Javascript
利用谷歌地图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
印尼林东PWN黄金曼特宁咖啡豆:怎么冲世界上最醇厚的咖啡冲煮教程
2021/03/03 冲泡冲煮
PHP脚本的10个技巧(3)
2006/10/09 PHP
PHP教程 基本语法
2009/10/23 PHP
php设计模式 Factory(工厂模式)
2011/06/26 PHP
php实现建立多层级目录的方法
2014/07/19 PHP
php常用的url处理函数总结
2014/11/19 PHP
PHP利用APC模块实现大文件上传进度条的方法
2015/10/29 PHP
PHP等比例压缩图片的实例代码
2018/07/26 PHP
完美解决JS中汉字显示乱码问题(已解决)
2006/12/27 Javascript
Jquery实现简单的动画效果代码
2012/03/18 Javascript
JavaScript中对循环语句的优化技巧深入探讨
2014/06/06 Javascript
node.js操作mongodb学习小结
2015/04/25 Javascript
jQuery ajax应用总结
2016/06/02 Javascript
Phaser.js实现简单的跑酷游戏附源码下载
2018/10/26 Javascript
ES6 Array常用扩展的应用实例分析
2019/06/26 Javascript
原生jQuery实现只显示年份下拉框
2020/12/24 jQuery
[02:32]DOTA2英雄基础教程 美杜莎
2014/01/07 DOTA
python实现zabbix发送短信脚本
2018/09/17 Python
Python使用Pandas对csv文件进行数据处理的方法
2019/08/01 Python
python try except返回异常的信息字符串代码实例
2019/08/15 Python
python集合的创建、添加及删除操作示例
2019/10/08 Python
python 读取.nii格式图像实例
2020/07/01 Python
Python分析最近大火的网剧《隐秘的角落》
2020/07/02 Python
python实现图像随机裁剪的示例代码
2020/12/10 Python
Notino罗马尼亚网站:购买香水和化妆品
2019/07/20 全球购物
应届行政管理专业个人自我评价
2013/12/28 职场文书
教导处工作制度
2014/01/18 职场文书
车队司机自我鉴定
2014/03/02 职场文书
院领导写的就业推荐信
2014/03/09 职场文书
购房协议书
2014/04/11 职场文书
改革共识倡议书
2014/08/29 职场文书
2014年教师节座谈会发言稿
2014/09/10 职场文书
英文导游词
2015/02/13 职场文书
不同意离婚代理词
2015/05/23 职场文书
三星 3nm 芯片将于第二季度开始量产
2022/04/29 数码科技
Python 绘制多因子柱状图
2022/05/11 Python