Проанализируем показания каждого подозреваемого и определим, кто из них говорит правду, а кто лжет.
Допустим, Смит говорит правду. Тогда Браун виновен, и Джон лжет, говоря, что Браун не виновен. В этом случае Браун также лжет, утверждая, что он не делал этого. Таким образом, Смит говорит правду (1), Джон лжет (2), Браун лжет (2). Условия соблюдены.
Допустим, Джон говорит правду. Тогда Браун не виновен, и Смит лжет. В этом случае Смит также лжет, утверждая, что он не делал этого. Браун, говоря, что он не делал этого, говорит правду, а говоря, что Джон не делал этого, лжет. Получается, Джон говорит правду (2), Смит лжет (2), Браун говорит правду (1) и лжет (1). Условия соблюдены.
Допустим, Браун говорит правду. Тогда он не делал этого, и Джон не делал этого. Тогда Смит лжет, говоря, что он не делал этого, и Джон лжет, говоря, что Браун не виновен. В этом случае получается, что Смит лжет (2), Джон лжет (2), а Браун говорит правду (2). Условия не соблюдены.
Так как Браун может быть как виновным, так и невиновным, оправдать следует Джона и Брауна.
Ответ: Джон и Браун