铅笔盒在哪里?

题目:

明明找不到铅笔盒了,妈妈对他说:“我把铅笔盒放到三个抽屉中的一个抽屉里了,每个抽屉上都写了一句话。不过,其中只有一句话是真的。”

明明看到的三句话是:

  1. 左边抽屉:“铅笔盒不在这里”;

  2. 中间抽屉:“铅笔盒不在这里”;

  3. 右边抽屉:“铅笔盒在左边的抽屉”;

问:铅笔盒放在哪个抽屉里?

这个问题,能明确一点是:铅笔盒只能放在一个抽屉里。可用程序简单解答如下:

// 假设左中右的三个抽屉的编号依次为:1, 2, 3

// 这个问题很明确的一点是,铅笔盒只能放在某一个抽屉里,以下按抽屉编号循环判断

for (int i = 1; i <= 3; i++) {

int count = 0;

count += (i != 1) ? 1 : 0;// 铅笔盒不在左边的抽屉

count += (i != 2) ? 1 : 0;// 铅笔盒不在中间的抽屉

count += (i == 1) ? 1 : 0;// 铅笔盒在左边的抽屉

if (count == 1) { // 只有一句话是真的

System.out.println("放铅笔盒的抽屉编号是" + i);

}

}

详细的可执行代码在这里