A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

甲乙两个人用一个英语单词玩游戏。两个人轮流进行,每个人每次从中删掉任意一个字母,如果剩余的字母序列是严格单调递增的(按字典序a < b < c <....<z),则这个人胜利。两个人都足够聪明(即如果有赢的方案,都不会选输的方案 ),甲先开始,问他能赢么?
输入: 一连串英文小写字母,长度不超过15,保证最开始的状态不是一个严格单增的序列。
输出:1表示甲可以赢,0表示甲不能赢。
例如: 输入 bad, 则甲可以删掉b或者a,剩余的是ad或者bd,他就赢了,输出1。
又如: 输入 aaa, 则甲只能删掉1个a,乙删掉一个a,剩余1个a,乙获胜,输出0。

函数头部:
C:int who (const char * word);
C++:int who (string word);
Java:public static int who(String in);
C# :public static  int who(string word);

评分

参与人数 1黑马币 +3 收起 理由
FFF + 3 太难,我们还是先学好基础吧!~.

查看全部评分

10 个回复

正序浏览
本帖最后由 赵晓海 于 2013-12-14 00:32 编辑
ReFly 发表于 2013-12-13 14:45
大致看了一下,思路和我的差不多。

你去csdn上测试一下。系统有很多测试用例,一下测出你代码是否100%正 ...

原来是挑战赛啊,明天把代码放到上面去测试下,我估计不会成功,比较耗时{:soso_e101:}
回复 使用道具 举报
ReFly 中级黑马 2013-12-13 14:45:12
10#
ReFly 发表于 2013-12-13 14:33
本来就看不出来,就是要你算,最后结果谁会赢。你的思路有道理。要么你取一个后你赢,要么你取一个后,别 ...

大致看了一下,思路和我的差不多。

你去csdn上测试一下。系统有很多测试用例,一下测出你代码是否100%正确。。。

回复 使用道具 举报
ReFly 中级黑马 2013-12-13 14:33:05
9#

本来就看不出来,就是要你算,最后结果谁会赢。你的思路有道理。要么你取一个后你赢,要么你取一个后,别再取的时候你不会输。。。
回复 使用道具 举报
本帖最后由 赵晓海 于 2013-12-13 14:19 编辑

算了,不整了
回复 使用道具 举报
又用了一个小时,能判断了,但是貌似还是不对。求测试用例

评分

参与人数 1黑马币 +3 收起 理由
FFF + 3 淡定,一认真,你就输了!

查看全部评分

回复 使用道具 举报

哎,我先放弃了,做了一个小时,原来最难的是确定先删除哪一个。从一开始目标就错了,估计要想一个晚上了!
回复 使用道具 举报

加油小哥
回复 使用道具 举报
我去做一下{:soso_e113:}
回复 使用道具 举报
这个。。。唉,算法的东西还真是不太会   找c++的那帮人吧  或者直接百度好了 这个关键是思想
回复 使用道具 举报
本帖最后由 ReFly 于 2013-12-11 01:20 编辑

题目原地址: http://hero.pongo.cn/Question/Details?ID=168&ExamID=163
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马