Истинность высказывания А зависит от того, сказал ли В правду, поэтому мы пока его рассматривать не будем.
В сказал: "либо А, либо В дал ложные показания".
Это будет правдой, только если солгал А, потому что иначе будет противоречие: если солгал В, то он сказал правду: В лжет.
Но, если В сказал правду, то солгал D: "В дал ложные показания".
А по условию солгал только один. Значит, этот вариант не подходит.
Получается, что В солгал. Проверим остальных.
А говорит: "Если В лжет, то С не лжет". Пока противоречий нет.
С говорит: "В не лжет, я дал ложные показания". Это правда: С действительно дал ложное показание о том, что В не лжет.
D говорит: В дал ложные показания. Это тоже правда.
Итак, никаких противоречий не возникает.
ответ: лжет В.
2часа=120 мин, 2/3 часа =40 минут
пусть вся работа это единица=1
тогда за 40 минут первый рабочий сделает 40/120= 1/3 работы
тогда второй сделает 1-1/3=2/3 работы за 40 мин оставшиеся 1/3 за 20 мин итого 40+20 = 60 мин= 1 час