免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块
楼主: prolj
打印 上一主题 下一主题

【我觉得这个招聘简直是低调的高调啊!】明日之星——创业公司程序员选拨赛第一季 [复制链接]

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
31 [报告]
发表于 2010-09-01 10:21 |只看该作者
本帖最后由 goldenfort 于 2010-09-01 10:28 编辑

回复 29# noword2k


    goldenfort: 最后一个醒来的人,去找其他同伴。(不可行,题目中未说明是否能够通过仪器来判断一个人是否醒来)


我的意思是, 第一个 能看到所有人都到齐的人 。


他这题目也有不清楚的地方,   降落不是同时降落吧, 可能先降落的人, 打开仪器时, 发现后边的人还没有掉下来呢。




可以搞成这样,  
一个人醒来后,  先数能看到的人, 如果总人数 <n ,那他自己不要动。

如果总人数 = n,    如果他自己是最东北的, 不要动,等人来找他。

如果不是最东北的。 就去找最东北的人, 然后找每个人。

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:50:28
32 [报告]
发表于 2010-09-01 10:28 |只看该作者
回复  noword2k

我的方案被忽略了,出总结贴怎么也得点评一下。
jamesr 发表于 2010-09-01 10:07



不好意思,加上了。

论坛徽章:
0
33 [报告]
发表于 2010-09-01 10:39 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
34 [报告]
发表于 2010-09-01 17:05 |只看该作者
这题目玩文字游戏啊,暗藏了N多个陷阱,不知道各位在想的时候注意到了几个。这分明是一道语文题,考短篇作文的,这提示语非常的困难。

论坛徽章:
0
35 [报告]
发表于 2010-09-01 17:48 |只看该作者
我的想法:让一个人首先开仪器,随便找到一个最近的,然后让第二个人再开,一起去找下一个。。。依此类推。
anyc 发表于 2010-09-01 08:53


如果不能指定谁先开呢?

论坛徽章:
59
2015年亚洲杯之约旦
日期:2015-01-27 21:27:392015年亚洲杯之日本
日期:2015-02-06 22:09:41拜羊年徽章
日期:2015-03-03 16:15:432015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015元宵节徽章
日期:2015-03-06 15:50:392015年亚洲杯之阿联酋
日期:2015-03-19 17:39:302015年亚洲杯之中国
日期:2015-03-23 18:52:23巳蛇
日期:2014-12-14 22:44:03双子座
日期:2014-12-10 21:39:16处女座
日期:2014-12-02 08:03:17天蝎座
日期:2014-07-21 19:08:47
36 [报告]
发表于 2010-09-01 22:41 |只看该作者
我来简单归纳并分析一下现有的答案。

daybreakcx: 所有人直接靠近最北方的人,如果有两个最北方,则选择最东边的人。(可行,操作直观、简单、便捷)
>>不可行,因为你不知道人全到了没,试想,如果你确定了最XX的人,后面一个下来更XX的呢?
goldenfort: 最后一个醒来的人,去找其他同伴。(不可行,题目中未说明是否能够通过仪器来判断一个人是否醒来)
>>可行,就是效果不大好点
benjiam: 计算function(x,y)=x*1e20+y,靠近得到最小值的那个人。 (不可行,如果最小值有两个就有问题)
>> 一样,参看1,不可行
freebarque:思想和daybreakcx差不多,但是后面的,让坐标小的人等待坐标大的人来会和,就多此一举了。
>>一样
welf:每三个人能形成一个圆,找直径最大的圆,以距离和最小的人(中间的那个人)为集合点。(不可行,有可能出现两个直径最大的圆)
>>一样
jamesr:往人员最密集的方向行动。(不可行,首先此方案是建立在"跑到一定程度就会互相看到"的基础之上,所以就只要给个大致的方向就可以了。但是,如果正好是平均分布的,就无法判断哪里最密集的,如果碰到这种情况,就往中心点移动,一旦动起来,就会让后醒来的人产生误判。)
>>这个分析对
flynetcn: 最中间的人,出发找其他人。(不可行,如何确定谁是最中间的人?就算能确定,那个人一旦行动后,“最中间”的位置也随之改变,让后醒来的人判断出另一个 “最中间”的人。)
>>对
anyc: 让一个人首先开仪器,随便找到一个最近的,然后让第二个人再开,一起去找下一个。(如果行动前,能开会决定谁是第一个开仪器的人,此方案就可行。)
>>不可行,和题义不对,看题义是分布式的,大家对等

事实上题义有点不清,有点变数。
1.假设“合理的时间”比较长,则认为所有人开机后能看到所有人,此时,可画一大圆将所有人包括,大家向圆心卷进所需时间最短
2.”合理时间"很短,各人到达时间将是主要变数。则此时比较难。如果等最后一人到达,时间上可能会很久,但情况已经变得很复杂,所以,要根据具体情况具体分析

论坛徽章:
0
37 [报告]
发表于 2010-09-02 08:03 |只看该作者
这个就是为什么伞兵跳伞都要预设集结地的原因

论坛徽章:
0
38 [报告]
发表于 2010-09-02 08:04 |只看该作者
其实问题的关键是取得一个集结坐标,而且人员运动的情况下要保持集结坐标不变,最北最东的方法是可行的,只不过是不是可以优化的问题。

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:50:28
39 [报告]
发表于 2010-09-02 09:17 |只看该作者
daybreakcx: 所有人直接靠近最北方的人,如果有两个最北方,则选择最东边的人。(可行,操作直观、简单、便捷)
>>不可行,因为你不知道人全到了没,试想,如果你确定了最XX的人,后面一个下来更XX的呢?
>>>如果醒来后,还有可能有其他人未着陆,我想,此题就无解了。

goldenfort: 最后一个醒来的人,去找其他同伴。(不可行,题目中未说明是否能够通过仪器来判断一个人是否醒来)
>>可行,就是效果不大好点
>>>题目中说这个仪器“能够在打开的瞬间探测到所有其他队员与自己的相对位置”,就是说只能知道位置,并不能知道是否已经醒了。那你怎么知道自己是最后一个醒来的人呢?


事实上题义有点不清,有点变数。
1.假设“合理的时间”比较长,则认为所有人开机后能看到所有人,此时,可画一大圆将所有人包括,大家向圆心卷进所需时间最短

随着人员的走动,圆心也会移动。
假设只有两人A和B,A先醒了,A就会画一个圆,A和B都在圆的边上,最小的圆就是,A和B在圆的直径的两头。
A向圆心进发,走到一半,B醒了,B做同样的事情,但是他得到的圆心,不同于A得到的圆心。

论坛徽章:
0
40 [报告]
发表于 2010-09-02 10:08 |只看该作者
本帖最后由 benjiam 于 2010-09-02 10:09 编辑

benjiam: 计算function(x,y)=x*1e20+y,靠近得到最小值的那个人。 (不可行,如果最小值有两个就有问题)

最小值有2个?  x*10e20+y 不行

好的 那就  string(x) + "-" + string (y)

这样总能比较最小值了吧

如果2个点一样 都是最小 当然就是都不动了。 都在同个地方。

最小值的人不要动。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP