有道难题2009决赛题目、前三名解题思路、官方答案与点评.docVIP

有道难题2009决赛题目、前三名解题思路、官方答案与点评.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
有道难题2009决赛题目、前三名解题思路、官方答案与点评

有道难题2009决赛题目、前三名解题思路、官方答案与点评 ??有道难题2009决赛题目 Final Round 1 题目: 1.1 CountingCrosses (easy) Problem Statement: M x N个点构成了一个矩形网格,M行N列。每个点是黑色或者白色。十字架由2个相交线段构成:垂直线段AB和水平线段CD,其中,A,B,C,D是不同的网格格点,点A和B不属于线段CD,点C和D不属于线段AB。设交点为E,一个有效的十字架要求满足如下条件:A,B,C,D和E颜色相同。 给定String[] grid,grid数组第i个元素的第j个字符如果是’W’,则表明第i行第j列的点是白色,’B’则代表黑色。返回给定网格中有效的十字架个数。 Definition Class: CountingCrosses Method: count Parameters: String[] Returns: int Method signature: int count(String[] grid) (be sure your method is public) Constraints grid 包含1到50个元素,含1和50。 grid的每个元素含1到50个字符,含1和50。 grid的所有元素包含相同数量的字符。 grid的每个元素只包含字符W和 B。 Examples 0) {BWB,WWW,BWB} Returns: 1 只有一个白色的十字架。 1) {BWB, WBW, BWB} Returns: 0 十字架水平部分和竖直部分的交点一定要和端点颜色一样。图中没有满足条件的十字架。 2) {WWWW, WWWW, WWWW, WWWW} Returns: 16 中央的4个点有希望成为十字架的交点E,每个点对应4个不同的有效十字架,所以总数是4*4=16。 3) {W} Returns: 0 4) {BWBW, BBBB, WWWW, BWBW} Returns: 4 分别以点(1,2) B 和点(2,1)W为交点,各对应2个有效的十字架,注意十字架中非端点和交点部分的颜色没有要求。 题目: 1.2 YoudaoInterns(DisobidentChildren) (medium) Problem Statement: 有道最近招聘了一批实习生,给他们安排座位时遇到了一个有趣的问题。办公室有N排,每排有M个座位。为了方便实习生和全职员工更好的交流,安排座位时,我们不让任何2个实习生座位水平,竖直或者对角线相邻。 给定一个String[] intern, 把intern的每个元素依次拼接起来得到一串以单个空格隔开的数字。这串数刚好有N个,第i个数字表示安排在第i排的实习生数量。请计算满足条件的座位安排方案总数。因为总数可能过大,返回方案总数除以1000000007的余数。 Definition: Class: YoudaoIntern Method: numberOfWays Parameters: int, String[] Returns: int Method signature: int numberOfWays(int M, String[] intern) (be sure your method is public) Constraints: M 在1到15之间,含1和15。 intern有1到50个元素,含1和50。 intern的每个元素包含1到50个字符,含1和50。 intern所有元素拼接起来后,会得到一串以单个空格隔开的数字,数字不会以0开始,这串数不会以空格开始或结尾,也不会有连续的空格。 intern元素拼接得到的数字串包含1到200个数字,含1到200,每个数字大小在0到M之间,含0和M。 Examples: 0) 3 {2} Returns: 1 只有一个方案把2个实习生安排在这一排。 1) 4 {1} Returns: 4 实习生可以被安排在这排的4个座位中任何一个。 2) 3 {1 1, 1} Returns: 2 两种方案如下: X.. ..X ..X X.. X.. ..X 3) 14 {2 1,0} Returns: 0 没有方法可以安排这么多实习生在同一排。注意intern代表int[] {2, 10}。 4) 4 {1 1 1} Returns: 10 题目: 1.3 SlidingPenguins (hard) Problem Statement: Jack 和 Jill 在南极研究工作站工作。为了消磨时间,他们经常玩一个游

文档评论(0)

asd522513656 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档