查看: 1347| 回复: 1
跳转到指定楼层
上一主题 下一主题
收起左侧

大学英语老师出的 bulls and cows变种,大家有空可以讨论一下

全局:

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
我的大学英语老师今天给我出了道算法题,是她以前玩文曲星的小游戏。是四个数字,你有一个答案,我可以去猜,比如答案是1234,然后A代表数字和位置都对,B代表数字对但是位置不对,我猜一次你要告诉我几个A 几个B,比如我猜4321那你要告诉我 0A4B,我猜1567你要告诉我1A0B,这样的,然后返回最小次数保证能猜到这个数字。

leetcode 第299题是根据guess 的string和target 的string,返回hint,也就是上文的1a0b,这里的要求是根据长度,返回最小猜测次数,或者说一个不断猜测的方法,返回答案,这里给出两种形式。也算是两个follow up。


第一个:

int guess(int length){
}
//根据输入的长度,返回出最少要猜测的次数,比如说length = 1,那么最少猜测次数就是9了。

第二个
class question{
     question(String target){
     }
     String BullsandCows(String guessString){
     //你调用的方法
     }
}


String guess(int length) {
//你要完成的部分
}
你可以不断调用leetcode 299的方法,根据他返回的几A几B猜出数字。


之前楼主群里的小伙伴说这在谷歌new grad onsite出现过(我英语老师还真屌),在此将题目和大家分享一下,楼主只有些许想法,只比暴力解进一层,大家有时间讨论一下蛤~~~~

上一篇:刷题除了懂算法以外还要掌握些什么
下一篇:在职刷题打卡
🔗
 楼主| 下次不要吃米粉 2018-3-13 11:53:29 | 只看该作者
全局:
第一个说的输入的长度指的是数字的数量。这里数字都是string,都是独立的,例如0123是可以接受的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表