本帖最后由 cjaizss 于 2010-03-08 18:33 编辑
用信息论下界的手段不难分析出来,刚才写了好几百文字来描述其思路过程,可惜网络一刷就什么都没了,郁闷,不写了,只写答案。
- //1,2,3,4,5,6,7,8,9,10,11,12
- if(1,2,3,4 == 5,6,7,8) {
- if(9 == 10) {
- if(9 == 11)
- return 12;
- else
- return 11;
- } else {
- if(9 == 11)
- return 10;
- else
- return 9;
- }
- } else if(1,2,3,4 < 5,6,7,8){
- if(1,5,6 < 2,7,8) {
- if(1,7 < 10,11)
- return 1;
- else if(1,7 == 10,11)
- return 8;
- else if(1,7 > 10,11)
- return 7;
- } else if(1,5,6 > 2,7,8) {
- if(2,5 < 10,11)
- return 2;
- else if(2,5 == 10,11)
- return 6;
- else if(2,5 > 10,11)
- return 5;
- } else if(1,5,6 == 2,7,8) {
- if(3 == 10)
- return 4;
- else
- return 3;
- }
- } else if(1,2,3,4 > 5,6,7,8){
- if(1,5,6 < 2,7,8) {
- if(2,5 < 10,11)
- return 5;
- else if(2,5 == 10,11)
- return 6;
- else if(2,5 > 10,11)
- return 2;
- } else if(1,5,6 > 2,7,8) {
- if(1,7 < 10,11)
- return 7;
- else if(1,7 == 10,11)
- return 8;
- else if(1,7 > 10,11)
- return 1;
- } else if(1,5,6 == 2,7,8) {
- if(3 == 10)
- return 4;
- else
- return 3;
- }
- }
复制代码 以下要好一点,因为不仅仅可以判断是哪个球,还可以判断轻重。
- //1,2,3,4,5,6,7,8,9,10,11,12
- if(1,2,3,4 == 5,6,7,8) {
- if(9,10,11 == 1,2,3) {
- if(1 > 12)
- return 12轻;
- else
- return 12重;
- } else if(9,10,11 > 1,2,3) {
- if(9 == 10)
- return 11重;
- else if(9 < 10)
- return 10重;
- else if(9 > 10)
- return 9重;
- } else if(9,10,11 < 1,2,3) {
- if(9 == 10)
- return 11轻;
- else if(9 < 10)
- return 9轻;
- else if(9 > 10)
- return 19轻;
- }
- } else if(1,2,3,4 < 5,6,7,8){
- if(1,5,6 < 2,7,8) {
- if(1,7 < 10,11)
- return 1轻;
- else if(1,7 == 10,11)
- return 8重;
- else if(1,7 > 10,11)
- return 7重;
- } else if(1,5,6 > 2,7,8) {
- if(2,5 < 10,11)
- return 2轻;
- else if(2,5 == 10,11)
- return 6重;
- else if(2,5 > 10,11)
- return 5重;
- } else if(1,5,6 == 2,7,8) {
- if(3 == 10)
- return 4轻;
- else
- return 3轻;
- }
- } else if(1,2,3,4 > 5,6,7,8){
- if(1,5,6 < 2,7,8) {
- if(2,5 < 10,11)
- return 5轻;
- else if(2,5 == 10,11)
- return 6轻;
- else if(2,5 > 10,11)
- return 2重;
- } else if(1,5,6 > 2,7,8) {
- if(1,7 < 10,11)
- return 7轻;
- else if(1,7 == 10,11)
- return 8轻;
- else if(1,7 > 10,11)
- return 1重;
- } else if(1,5,6 == 2,7,8) {
- if(3 == 10)
- return 4重;
- else
- return 3重;
- }
- }
复制代码 |