全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
3426 8
2015-12-19
有这样一个有序序列是1和-1随机交互出现,我想求 1 在序列中占比最大的一段,并且求出它的百分比(为1的除以 1加上两侧挨着-1之和)。

举两个例子
序号    值
1         1
2         1
3        -1
4         1
5         1
6         1
7         1
8        -1
9        -1
10       1
那么这个之中 1 占比最大的序列是 3 到9  ,百分比为 4到7的1数量除以3 到9之和 为 4/7

第二个例子是为了解释为什么 每次遇到1 再重新相加求最大值方法行不通

序号     值
1          1
2         -1
3         -1
4          1
5          1
6          1
7          -1
8           1
9           1
10        -1

这个中的1 占最大比元素字段为2 到10 ,因为7后面有两个1 将抵消-1的影响, 百分比计算为 5/9

当然是有循环方法倒是可以实现,只不过稍微麻烦些。
麻烦各位有没有了解更好,更快的方法,谢谢!

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-12-19 16:58:32
你在讲啥
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-19 17:04:26
就是要求这个序列中,在某个位置开始到某个位置结束,这个为1的元素,占比最大。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-19 18:46:40
题主的算法应该再描述清楚一些。你计算的两个比例里分母9是怎么得出的?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-19 19:09:13
suimong 发表于 2015-12-19 18:46
题主的算法应该再描述清楚一些。你计算的两个比例里分母9是怎么得出的?
抱歉,第一个9应该为7,分子是1的数量,分母是1和两侧-1的数量之和。换句话说是,假如得到了某段元素中1最多,那么分子就是序列中1的数量,分母就是这段序列的总数量,也就是1和-1的数量之和。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-19 19:19:16
序列中只有1和-1两种元素,思考解决方法时可以想成两种状态,百分比是为了衡量1这种元素在这段元素中的出现的强烈度。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群