有两堆东西,一堆4个,一堆7个,两个人开始拿东西,一次可以拿任意个,但只能从一堆中拿。现规定:如果最后剩下一个,而且轮到谁拿谁就输了。现在你先拿,请问有致胜方法吗?
答案:应该是两边都是偶数(不包括0)个是一个稳定状态,如果这个状态被对方打破,采取两个方法,第一就是可以纠正回来的纠正回来,第二纠正不回来,也就是,对方取的使一边只剩一个了,那我就取的让另外一边只剩一个,如果对方取的使一边只剩0个,那我就取其中的一边还剩下两个
算法程序题:
该公司笔试题就1个,要求在10分钟内作完。
题目如下:用1、2、2、3、4、5这六个数字,用java写一个main函数,打印出所有不同的排列,如:512234、412345等,要求:"4"不能在第三位,"3"与"5"不能相连。
留着看:
遍历122345到543221之间的整数,剔除不符合的就行了。
- public void test(){
- for (Integer i = 122345; i < 543221; i++) {
- String string = i.toString();
- if(!string.matches(".*[06789].*")&&string.matches(".*1.*")&&string.matches(".*2.*2.*")
- &&string.matches(".*3.*")&&string.matches(".*4.*")&&string.matches(".*5.*")
- &&!string.matches("^..4.*$")&&!string.matches("^.*((35)|(53)).*$")){
- System.out.println(string);
- }
- }
- }