Нам эту задачу давали на лекциях по функционально-логическому программированию. Правда, я на эти лекции не ходила и даже не пыталась ее решать. Оказалось, это интересно =) заняло минут 20.. к 2% населения земного шара, способным решить эту задачу в уме, я не отношусь))
Википедия на эту тему =)
Текст задачи:
С одной стороны улицы подряд стоят пять домов, каждый - своего цвета. В каждом живёт человек, все пять - разных национальностей. Каждый человек предпочитает уникальную марку сигарет, напиток и домашнее животное. Кроме того:
- Англичанин живёт в красном доме.
- Швед держит собаку.
- В зелёном доме пьют кофе.
- Датчанин предпочитает чай.
- Зелёный дом - по соседству слева от белого.
- Курильщик «Pall Mall» разводит птиц.
- В жёлтом доме курят «Dunhill».
- Молоко пьют в доме посередине.
- Норвежец живет в первом доме.
- Человек, курящий «Marlboro», живёт рядом с хозяином кошки.
- Дом, где курят «Dunhill», - рядом с тем, где держат лошадь.
- Любитель «Winfield» пьёт пиво.
- Немец курит «Rothmans».
- Норвежец живёт рядом с синим домом.
- Тот, кто курит «Marlboro», живет рядом с тем, кто пьет воду.
Вопрос:
У кого живёт рыбка?
UPD. Симпатичная
вариация на тему =)