12 шариков 1 как его найти

Для начала нужно пронумеровать шары 1,2,3,…,12

Делим все шары по 4 штуки в каждую группу (1 2 3 4) (5 6 7 8 ) (9 10 11 12)

Теперь взвешиваем первые две группы (1,2,3,4 и 5,6,7,8)

Если они равны, то нужный шар нужно искать в оставшейся группе.

Далее взвешиваем по два шара из третьей группы (9,10 и 11,12) — тут шар 11 не то, что нам нужен.

Если они равны, то нужный шар 12. Если нет, то запоминаем состояние весов (тяжелее/легче).

Взвешиваем шары (9,10). Если они равны, то нужный шар 11.

Если состояние весов не изменилось, то нужный шар 9. Если состояние весов изменилось, то нужный 10.

Время на прочтение
2 мин

Количество просмотров 27K

Совершенно случайно узнал об интересной задаче, которая очень даже может взбодрить.

Задача:

На столе лежат 12 совершенно одинаковых по виду шаров, но один из них — фальшивый. Он отличается от остальных шаров по весу (мы не знаем, легче он или тяжелее). В вашем распоряжении имеются чашечные весы без гирь. Нужно найти аномальный шар за минимальное количество взвешиваний (подсказка — решение можно найти за 3 взвешивания).

Перед тем, как решить задачу за 5 минут, внимательно прочтите условие.
У меня на всё ушло 6 часов (долго, не претендую на гениальность).

Математическое обоснование решения и краткая история задачи

Мое решение на языке Java с тестами

LINK — для проверки online

public class Balls {

    private static final int A = 10;
    private static final int B = 11;

    private static final int LEFT_BIGGER = 1;
    private static final int RIGHT_BIGGER = 2;
    private static final int SAME = 4;

    public static void printTest() {
        System.out.println(Balls.test(true));
        System.out.println(Balls.test(false));
    }

    public static String test(boolean weight) {
        int[] array = new int[12];
        StringBuilder builder = new StringBuilder();

        for (int i = 0; i < array.length; ++i) {
            for (int w = 0; w < array.length; ++w) {
                array[w] = 5;
            }
            array[i] += weight ? 2 : -2;

            Balls balls = new Balls(array);

            builder.append("pos   = 0123456789ABn");
            builder.append("array = ");
            for (int w : array) {
                builder.append(w);
            }
            builder.append('n');
            builder.append("res   = ");
            balls.calculateNumber();
            int number = balls.getResultPosition();
            for (int w = 0; w < array.length; ++w) {
                builder.append(w == number ? '*' : ' ');
            }
            builder.append(" // number = ");
            builder.append(number);
            builder.append("; steps = ");
            builder.append(balls.getStepsCount());
            builder.append('n');
        }
        return builder.toString();
    }

    private int[] in;
    private int steps;
    private int number = -1;

    public Balls(int[] in) {
        this.in = in;
    }

    public void calculateNumber() {
        this.steps = 0;

        int step1 = compare(sum(0, 1, 2, 3), sum(4, 5, 6, 7));

        switch (step1) {
            case SAME: {
                int step2 = compare(sum(0, 1), sum(8, 9));
                switch (step2) {
                    case SAME: {
                        number = compare(in[0], in[B]) == SAME ? A : B;
                        break;
                    }
                    default: {
                        number = compare(in[0], in[9]) == SAME ? 8 : 9;
                        break;
                    }
                }
                break;
            }
            case LEFT_BIGGER: {
                int step2 = compare(sum(0, 1, 4), sum(2, 3, 5));
                switch (step2) {
                    case LEFT_BIGGER: {
                        int tempState = compare(in[0], in[1]);
                        number = tempState == SAME ? 5 : tempState == LEFT_BIGGER ? 0 : 1;
                        break;
                    }
                    case RIGHT_BIGGER: {
                        int tempState = compare(in[2], in[3]);
                        number = tempState == SAME ? 4 : tempState == LEFT_BIGGER ? 2 : 3;
                        break;
                    }
                    case SAME: {
                        number = compare(in[6], in[7]) == LEFT_BIGGER ? 7 : 6;
                        break;
                    }
                }
                break;
            }
            case RIGHT_BIGGER: {
                int step2 = compare(sum(0, 1, 4), sum(2, 3, 5));
                switch (step2) {
                    case LEFT_BIGGER: {
                        int newState = compare(in[2], in[3]);
                        number = newState == SAME ? 4 : newState == LEFT_BIGGER ? 3 : 2;
                        break;
                    }
                    case RIGHT_BIGGER: {
                        int tempState = compare(in[0], in[1]);
                        number = tempState == SAME ? 5 : tempState == LEFT_BIGGER ? 1 : 0;
                        break;
                    }
                    case SAME: {
                        number = compare(in[6], in[7]) == LEFT_BIGGER ? 6 : 7;
                        break;
                    }
                }
                break;
            }
        }
    }

    public int getResultPosition() {
        return number;
    }

    public int getStepsCount() {
        return steps;
    }

    private int compare(int l, int r) {
        ++steps;
        return l > r ? LEFT_BIGGER : l < r ? RIGHT_BIGGER : SAME;
    }

    private int sum(int... array) {
        int result = 0;
        for (int i : array) {
            result += in[i];
        }
        return result;
    }
}

150 / 73 / 27

Регистрация: 09.04.2010

Сообщений: 297

1

01.05.2010, 21:18. Показов 10880. Ответов 23


Студворк — интернет-сервис помощи студентам

Есть 12 шариков (одинаковых свиду), один из них отличается по весу (либо легче, либо тяжелее не указано) от остальных 11-ти.
Необходимо с помощью 3-х взвешиваний (на обычных рычажных весах типа: легче — тяжелее)

с уверенностью указать бракованый шарик.

Укажите последовательность взвешиваний



0



182 / 183 / 55

Регистрация: 08.04.2009

Сообщений: 1,309

02.05.2010, 13:50

2

Сначала взвешиваем 2-е кучки по шесть шариков, ту кучку, что легче делим пополам и взвешиваем по три шарика на чашке, а затем из кучки которая легче выбираем два шарика наугат и взвешиваем, возможно 2-а исхода:
1) Один из них будет легче и значит это он бракованный
2) Они будут равны по весу => бракованый третий шар



0



150 / 73 / 27

Регистрация: 09.04.2010

Сообщений: 297

03.05.2010, 00:17

 [ТС]

3

а затем из кучки которая легче выбираем два шарика наугат и взвешиваем, возможно 2-а исхода:
1) Один из них будет легче и значит это он бракованный
2) Они будут равны по весу => бракованый третий шар

Возможен также третий результат — чашки равны -> значит бракованый среди остальных 6-ти шариков и 1 взвешивание

Задача сложная



0



182 / 183 / 55

Регистрация: 08.04.2009

Сообщений: 1,309

03.05.2010, 02:19

4

Цитата
Сообщение от FireNovel
Посмотреть сообщение

Возможен также третий результат — чашки равны -> значит бракованый среди остальных 6-ти шариков

нет, это значит, что бракованный — Третий шар из отобранной кучки
это вариант 2) который я описал, может просто не оч понятно



0



Эксперт С++

2346 / 1719 / 148

Регистрация: 06.03.2009

Сообщений: 3,675

03.05.2010, 08:46

5

vet, т.к. заранее не известно легче бракованный шар или тяжелее остальных, 1-ое взвешивание со стопроцентной вероятностью не позволит указать в какой кучке бракованный шар.



0



182 / 183 / 55

Регистрация: 08.04.2009

Сообщений: 1,309

03.05.2010, 08:48

6

CyBOSSeR, ага я пропустил фразу

Цитата
Сообщение от FireNovel
Посмотреть сообщение

(либо легче, либо тяжелее не указано)



0



Эксперт CАвтор FAQ

21265 / 8281 / 637

Регистрация: 30.03.2009

Сообщений: 22,645

Записей в блоге: 30

03.05.2010, 10:50

7

Мысли

У нас каждое взвешивание имеет три результата: левая тяжелее, равны, правая тяжелее. Поэтому за два взвешивания возможно 9 разных комбинаций результатов, а за три взвешивания — 27.

Надо разбивать шарики на 3 кучи по 4 шарика. Первым взвешиванием мы сравниваем кучу N1 и кучу N2.

Если кучи N1 и N2 равны, то значит бракованный шарик в куче N3. При этом мы уже точно знаем, что в кучах N1 и N2 все шары НЕ бракованные. Вторым взвешиванием кладём на весы с одной стороны два шара из кучи N1 (НЕ бракованных) и 2 шара из кучи N3. Если на втором взвешивании опять всё поровну, значит бракованный шар среди оставшихся двух шаров из кучи N3. Значит третьим взвешиванием мы сравниваем один шар из кучи N1 (НЕ бракованный) и любой из оставшихся двух шаров кучи N3. Если на третьем взвешивании поровну, значит оставшийся шар бракованный, если не поровну, значит бракованный тот шар, который положили на третье взвешивание (ибо другой шар заведомо НЕ бракованный). Вернёмся ко второму взвешиванию (напоминаю, там два НЕ бракованных шара и два шара из кучи N3) в случае, если одна из чаша весов перевесила. Поскольку мы знаем, что с одной стороны два шара заведомо НЕ бракованных, то по положению весов мы сможем узнать, бракованный шар легче или тяжелее, а потом на третье взвешивания идут два шара из кучи N3, один из которых бракованный и мы знаем, легче он или тяжелее. Мы эти два шара просто кладём на разные чаши весов

Теперь вернёмся к первому взвешиванию (когда кладутся кучи N1 и N2) в случае, когда одна чаша весов перетянула. Значит бракованный шарик находится в куче N1 или N2. За 2 взвешивания можно получить 9 разных комбинаций результатов, т.е. теоретически мы ещё можем вычислить. Итого задача свелась к тому, чтобы на тех же условиях вычислить за 2 взвешивания из 8 шариков. Дополнительно у нас имеются ещё 4 шарика, которые гарантированно НЕ бракованные. Дополнительно мы после первого взвешивания владеем информацией, какая куча (N1 или N2)тяжелее

Дальше надо подумать, тут без листочка не обойтись



0



150 / 73 / 27

Регистрация: 09.04.2010

Сообщений: 297

03.05.2010, 14:48

 [ТС]

8

Evg, Вы думаете в правильную сторону



0



Эксперт CАвтор FAQ

21265 / 8281 / 637

Регистрация: 30.03.2009

Сообщений: 22,645

Записей в блоге: 30

03.05.2010, 14:56

9

Цитата
Сообщение от FireNovel
Посмотреть сообщение

Evg, Вы думаете в правильную сторону

То, что я написал — это я пока ещё не думал. Это вытекает из элементарного понимания теоретического предела количества шариков, среди которых можно найти бракованный за 1, 2, 3 взвешивания. А вот то, что осталось дописать — вот там уже реально надо думать. Хотя общий смысл понятен, но думать пока лениво



0



Пскович

48 / 50 / 0

Регистрация: 29.09.2009

Сообщений: 492

03.05.2010, 15:09

10

а вы уверенны что задача решаема?



0



150 / 73 / 27

Регистрация: 09.04.2010

Сообщений: 297

03.05.2010, 15:12

 [ТС]

11

а вы уверенны что задача решаема?

100 % решаема.
Решение — хитрое



0



Эксперт CАвтор FAQ

21265 / 8281 / 637

Регистрация: 30.03.2009

Сообщений: 22,645

Записей в блоге: 30

03.05.2010, 15:21

12

Цитата
Сообщение от Green90
Посмотреть сообщение

а вы уверенны что задача решаема?

Решаемая. В моё время эта задача была в учебниках по математике за 4 класс в разделе «задачи повышенной сложности»



0



Пскович

48 / 50 / 0

Регистрация: 29.09.2009

Сообщений: 492

04.05.2010, 14:09

13

Цитата
Сообщение от Evg
Посмотреть сообщение

Решаемая. В моё время эта задача была в учебниках по математике за 4 класс в разделе «задачи повышенной сложности»

да по ходу в четвёртый класс мне рано

Добавлено через 22 часа 33 минуты
FireNovel, расскажи пожалуйста ответ ну очень интересно…



0



0 / 0 / 0

Регистрация: 05.05.2010

Сообщений: 14

05.05.2010, 10:11

14

Цитата
Сообщение от Evg
Посмотреть сообщение

У нас каждое взвешивание имеет три результата: левая тяжелее, равны, правая тяжелее. Поэтому за два взвешивания возможно 9 разных комбинаций результатов, а за три взвешивания — 27.

Надо разбивать шарики на 3 кучи по 4 шарика. Первым взвешиванием мы сравниваем кучу N1 и кучу N2.

Если кучи N1 и N2 равны, то значит бракованный шарик в куче N3. При этом мы уже точно знаем, что в кучах N1 и N2 все шары НЕ бракованные. Вторым взвешиванием кладём на весы с одной стороны два шара из кучи N1 (НЕ бракованных) и 2 шара из кучи N3. Если на втором взвешивании опять всё поровну, значит бракованный шар среди оставшихся двух шаров из кучи N3. Значит третьим взвешиванием мы сравниваем один шар из кучи N1 (НЕ бракованный) и любой из оставшихся двух шаров кучи N3. Если на третьем взвешивании поровну, значит оставшийся шар бракованный, если не поровну, значит бракованный тот шар, который положили на третье взвешивание (ибо другой шар заведомо НЕ бракованный). Вернёмся ко второму взвешиванию (напоминаю, там два НЕ бракованных шара и два шара из кучи N3) в случае, если одна из чаша весов перевесила. Поскольку мы знаем, что с одной стороны два шара заведомо НЕ бракованных, то по положению весов мы сможем узнать, бракованный шар легче или тяжелее, а потом на третье взвешивания идут два шара из кучи N3, один из которых бракованный и мы знаем, легче он или тяжелее. Мы эти два шара просто кладём на разные чаши весов

Теперь вернёмся к первому взвешиванию (когда кладутся кучи N1 и N2) в случае, когда одна чаша весов перетянула. Значит бракованный шарик находится в куче N1 или N2. За 2 взвешивания можно получить 9 разных комбинаций результатов, т.е. теоретически мы ещё можем вычислить. Итого задача свелась к тому, чтобы на тех же условиях вычислить за 2 взвешивания из 8 шариков. Дополнительно у нас имеются ещё 4 шарика, которые гарантированно НЕ бракованные. Дополнительно мы после первого взвешивания владеем информацией, какая куча (N1 или N2)тяжелее[/SPOILER]

Дальше надо подумать, тут без листочка не обойтись

Теперь вернёмся к первому взвешиванию (когда кладутся кучи N1 и N2) в случае, когда одна чаша весов перетянула. Значит бракованный шарик находится в куче N1 или N2.
Будем считать, что куча N2 перетянула N1 — значит, либо в куче N2 брак шарик тяжелее, либо в N1 брак шарик легче.
Теперь делим N2 на две кучи по 2 шарика — N21 и N22. И из кучи N1 добавляем по шарику в каждую из куч N21 и N22, запоминая эти шарики (пусть х и y). Взвешиваем кучи N21x и N22y. Далее рассматриваем 3 случая:
1)кучи равны.
Значит из оставшихся 2ух шариков из N1 бракованный тот, который легче. Их можно сравнить как между собой, так и с любым из небракованых.
2)N21x тяжелее N22y
т.к. в самом первом взвешивании N2 была тяжелее N1, значит остаются два варианта: либо один из шаров N21 тяжелее, либо шар y, который в куче N22, легче. Сравниваем шары N21 между собой. Равны -> шар y бракованный. Не равны — бракованный тот, который тяжелее.
3)N22y тяжелее N21x
Аналогично 2 случаю. Т.к. в самом первом взвешивании N2 была тяжелее N1, значит остаются два варианта: либо один из шаров N22 тяжелее, либо шар х легче. Сравниваем шары N22 между собой. Равны -> шар х бракованный. Не равны — бракованный тот, который тяжелее.

Вот, вроде все. Надеюсь не запустался в обозначениях



0



714 / 402 / 33

Регистрация: 04.10.2009

Сообщений: 1,686

05.05.2010, 10:14

15

пошел искать шарики…. хотябы свои…



0



4203 / 1795 / 211

Регистрация: 24.11.2009

Сообщений: 27,562

05.05.2010, 10:59

16

Если 1 тяжеле, то:
1. По 6 на каждую чашу. Отличающийся в более тяжёлой шестёрке.
2. Её 3 на каждую чашу. Отличающийся в более тяжёлой тройке.
3. Два шарика на чаши. Если один тяжелее, то он найден, иначе тяжелее третий.
Если один легче, то:
1. По 6 на каждую чашу. Отличающийся в более лёгкой шестёрке.
2. Её 3 на каждую чашу. Отличающийся в более лёгкой тройке.
3. Два шарика на чаши. Если один легче, то он найден, иначе легче третий.
Хоть как взвешивай, но даже зная вид отличия, двоичным поиском меньше трёх нельзя. Но ели вид отличия не известен, то первое взвешивание ничего не даёт и надо взвесить не две, а все четыре тройки. Три тройки окажутся одинаковы, одна будет отличаться. Три взвешивания уже израсходованы. Значит надо начинать с троек: их всё равно надо взвешивать все, но на это и так уйдёт два взвешивания. В какой бы шестёрке ни оказалась отличающаяся тройка, не известно на какой именно она чаше. Пусть левая тяжелее. А может она такая же, как и две другие тройки? Может шарик не тяжелее, а легче? Значит надо взвесить одну чётную и одну нечётную тройку ещё раз — вот вам и три взвешивания. Хоть с шестёрок начинай, хоть с троек за три взвешивания найдём только отличающуюся тройку. Задача в такой постановке не двоичными методами решаема, а если указать вид отличия, то для школьников сложность повышенная, а для программистов — пониженная (двоичная система счисления, двоичный поиск — азы информатики).



0



0 / 0 / 0

Регистрация: 05.05.2010

Сообщений: 14

05.05.2010, 11:10

17

Цитата
Сообщение от taras atavin
Посмотреть сообщение

Если 1 тяжеле, то:
Если один легче, то:

а почему не сразу, если шариков 6))) зачем условие задачи коверкать?
я не программист, простой логикой додумал решение. Школьникам должно быть под силу.



0



4203 / 1795 / 211

Регистрация: 24.11.2009

Сообщений: 27,562

05.05.2010, 11:27

18

Троичный поиск:
1. Взвешиваем любые две четрвёрки. Если одна отличается, то в какую сторону от двух других? Её вес травнён с весом только одной другой. Одна тяжелее — это вытекает из неравенства. Но может она равна третьей, а отличающийся шарик легче? Вторая легче, но может отличающийся шарик тяжелее?
2. Если веса не равны, то взвешиваем любую из этих четвёрок и с третьей. Два взвешивания уже использованы. Иначе третья четвёрка и отличается.
3. Если веса равны, то отличается чётверка, участвовавшая только в первом взвешивании. Иначе отличается звешенная дважды.
4. Отличающуюся четвёрку делим на пары, взвешиваем обе. Одна отличается, но это и так известно. Но в какую строну от пар других четвёрок?
5. Меняем в парах по одному шарику и взвешиваем ещё раз. Отличающаяся пара найдена. Ели результат поменялся, то отличаются шарики, которые менялись, иначе — два других.
6. В отличающейся паре сравниваем взвешиваем оба шарика с любым третьим.
Итог: шесть взвешиваний.
1. Взвешиваем любые две четрвёрки. Если одна отличается, то в какую сторону от двух других? Её вес травнён с весом только одной другой. Одна тяжелее — это вытекает из неравенства. Но может она равна третьей, а отличающийся шарик легче? Вторая легче, но может отличающийся шарик тяжелее?
2. Если веса не равны, то взвешиваем любую из этих четвёрок и с третьей. Два взвешивания уже использованы. Иначе третья четвёрка и отличается.
3. Если веса равны, то отличается чётверка, участвовавшая только в первом взвешивании. Иначе отличается звешенная дважды.
4. В отличающейся четвёрке взвешиваем два шарика.
5. Если вес различен, то взвешиваем один из них с любым третьим.
6. Иначе отличается другая пара. Взвешиваем каждый из этих шариков с любым третьим.
Итог: шесть взвешиваний.
Вывод: троичный поиск медленнее двоичного за исключением случае, когда надо зная вид отличия найти отличающийся объект именно из трёх. Причина: сравниваются не три, а два объекта или две группы объектов. Большие же основания не возможны из-за того, что при взвешивании возможны только три исхода.
Вывод: задача в исходной постановке не решаема.



0



0 / 0 / 0

Регистрация: 05.05.2010

Сообщений: 14

05.05.2010, 11:49

19

Цитата
Сообщение от taras atavin
Посмотреть сообщение

Вывод: задача в исходной постановке не решаема.

не знаю, что за троичные/двоичные поиски ты придумал, но выше я уже описал метод решения в три взвешивания. А ты делаешь очень много лишних действий.



0



150 / 73 / 27

Регистрация: 09.04.2010

Сообщений: 297

05.05.2010, 13:19

 [ТС]

20

Цитата
Сообщение от 1nstant
Посмотреть сообщение

Вот, вроде все. Надеюсь не запустался в обозначениях

Действительно разгадка именно такая
Есть еще один вариант, но принцип такой же.
Главная хитрость переложить шарики из одной тарелки в другую — не очень очевидно, и все сперва пытаются сравнивать с отброшенными, заведомо не бракованными шариками.

Надеюсь задачка оказалась интересной



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

05.05.2010, 13:19

Помогаю со студенческими работами здесь

Найти число шариков, у которых отклонение будет меньше 1,08 мм, если изготовлено 1000 шариков
Автомат изготавливает шарики. Диаметр шарика — случайная величина, подчиненная нормальному закону….

В кафе мороженое продают по три шарика и по пять шариков. Можно ли купить ровно k шариков мороженого?
Добрый день, товарищи, вот есть такая задачка…

В кафе мороженое продают по три шарика и по…

Движение шариков
Помогите пожалуйста, добрые люди:) Движение качающихся N шариков на нитях разной длины…

Выстрел шариков
Вообще с графикой туго, и как то не пробывал даже себя в делфи себя работать с тем же канвасом,…

пересечение шариков
шарики движутся по окружности
если они пересекаются, то должны закрашиваться красным цветом на…

количество шариков
дано:

2 плюшевых медведя весом 350 грамм и 8400 грамм

шарики с гелием диаметром 30 см и 1…

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:

20

В нашем мире существует множество разных проблем и одна из таких проблем – это проблема тринадцати шаров.

Не про многие математические задачи, даже весьма знаменитые, сложные и важные, известно, как и когда они возникли. Так, никто не знает (и вряд ли когда-нибудь узнает), кто впервые задал вопрос о квадратуре круга или поинтересовался возможностью доказать пятый постулат Евклида. Даже в новейшие времена про важные задачи остаётся неизвестным, кто впервые их сформулировал. Тем удивительнее тот факт, что дата и даже обстоятельства возникновения задачи тринадцати шаров в пространстве, возникла в конце XVI в.

И в наше время эта проблема остаётся актуальной, так как при всей простоте и наглядности поставленного вопроса, он, как это часто бывает с просто формулируемыми математическими задачами, оказался очень трудным. Даже доказать, что четырнадцатый шар не может поместиться, — не простая задача, требующая хорошего знания геометрии.

Проблема: Сколько непересекающихся шаров одного и того же радиуса может касаться фиксированного шара того же радиуса?

Цель моей работы – рассмотрение вариантов расположения шаров в пространстве, так как я изучаю стереометрию.

Задачи: 1)изучить литературу по данному вопросу и выяснить, что по теме имеется в современной науке.

2)Провести опыты с помощью равных шаров

3)С использованием компьютерной программы провести опыты по определению контактного числа шара.

Работа состоит из введения, основной части и заключения, списка использованной литературы и приложений.

Основная часть

Задача. Дана окружность. Сколько непересекающихся окружностей такого же радиуса можно к ней «прислонить»? Иными словами, каково максимальное число непересекающихся окружностей фиксированного радиуса может касаться некоторой окружности того же радиуса.

Это очень простая задача. Может быть, мы не стали бы ее разбирать так подробно, если бы она не была одним из простейших примеров чрезвычайно интересного класса задач современной геометрии – задач, в которых требуется определить контактное число той или иной фигуры. Дадим теперь точное определение того, что называется контактным числом.

Определение: Контактным числом фигуры Ф (под фигурой мы понимаем произвольную замкнутую область на плоскости, в трёхмерном пространстве или даже в евклидовом пространстве произвольной размерности) называется максимальное натуральное число к(Ф) непересекающихся фигур, равных Ф, которые касаются Ф.

Обозначение к(Ф) происходит от английского названия чисел kissing numbers, то есть «числа поцелуев». Надо отдать должное поэтической натуре англичан.

Задачу нахождения контактных чисел можно различным образом видоизменять, усложнять или упрощать. Например, можно рассматривать не произвольные фигуры, равные данной, а только те, которые получаются из нее параллельным переносом на некоторый вектор. Или же можно рассматривать не только фигуры, касающиеся данной, но и фигуры, касающиеся тех, которые касаются данной и т. д. Некоторые из таких задач уже решены, про подавляющее большинство других ничего не известно. Например, можно показать, что любая фигура на плоскости может касаться не более чем с 8, но не менее чем с 6 (рис. 2) своими образами при параллельных переносах, причем восемь касаний возможны, если и только если данная фигура – параллелограмм. С другой стороны, мало что известно про контактное число произвольного треугольника. Ясно только, что оно должно зависеть от отношения его самой длинной и самой короткой сторон.

Одна из самых простых, но важных (в том числе и для приложений) задач такого рода – задача нахождения контактного числа n – мерного евклидова шара (или сферы). Напомним, что n – мерным шаром радиуса R центром в точке A(a1;. ; an) называется множество Bn(R;A), состоящее из всех последовательностей по n вещественных чисел (x1; x2;. ; xn), удовлетворяющих условию (x1 — a1)2 +. + (xn – an)2 ≤ R2. Два таких шара с центрами в A и B и радиусами R1 и R2 называются касающимися, если

— и пересекающимися, если

Тогда для каждого натурального числа n мы можем рассмотреть шар Bn = Bn(1;O), где O = = (0;. ; 0), и попытаться найти максимальное число касающихся этого шара непересекающихся шаров радиуса 1. Именно это число называется контактным числом и обозначается k(Bn). Обычно его сокращают до kn. Утверждение задачи 1 можно теперь сформулировать в виде формулы k2 = 6.

Данная статья посвящена задаче нахождения контактного числа трехмерного шара. Ответ на этот вопрос известен уже примерно 50 лет: k3 = 12.

Задачу о нахождении контактного числа трехмерного шара часто называют задачей «тринадцати шаров». Это связано с тем, что на самом деле не так уж и сложно найти конфигурацию, при которой данный шар касается двенадцати таких же.

История задачи

В конце XVI в. , когда знаменитый английский политик, военный, придворный и поэт сэр Уолтер Рэли задал своему помощнику чисто практический вопрос: «Как лучше хранить пушечные ядра?» Этим помощником был Томас Хариот.

Рэли попросил Хариота разобраться со складированием пушечных ядер. В рукописи, датированной воскресеньем 12 декабря 1591 г. , Хариот представил таблицу, позволяющую определить, сколько ядер помещается в пирамиде с заданным ребром основания и наоборот, сколько ядер надо положить в основание пирамиды, если надо наиболее экономным способом перевести заданное количество ядер (между прочим, эта таблица на 50 лет предвосхитила открытие треугольника Паскаля).

Однако Хариот не остановился на этом и стал исследовать вопрос о наиболее плотной упаковке ядер. Задача всплыла в его переписке с другим выдающимся ученым той эпохи – Иоганом Кеплером. Она сильно заинтересовала Кеплера. Для начала Кеплер попробовал определить, сколько шаров касается каждого шара в стандартной упаковке – когда каждый следующий слой шаров располагается в «прорехах» между шарами предыдущего слоя. Оказалось, что таких шаров 12. Очень быстро Кеплер придумал ещё один способ расположения шаров, при котором каждый шар касается 12 других. Я проверил и убедился практически с моделями пушечных ядер. Проще всего описать этот способ следующим образом: поместите один шар снизу от данного (он должен касаться данного в «южном полюсе»), затем поместите 5 шаров вокруг данного (снизу от экватора) так, чтобы они касались данного и предыдущего рассмотренного, а так же все касались друг друга. Пять таких шаров надо расположить в выемках между данным шаром и пятью только что рассмотренными. Наконец, сверху надо положить ещё один шар (рис. 4). Итого 1 + 5 + 5 + 1 = 12 шаров. Все эти шары касаются друг друга, и упаковка кажется весьма плотной и не похожей на упаковку ядер в пирамиде. Однако Кеплеру удалось показать, что эти две конфигурации ядер совпадают. Однако доказать свою гипотезу он не смог. Таким образом, уже в начале XVII в. было известно несколько способов расположить 12 шаров в пространстве вокруг данного центрального шара. Но прошло еще почти сто лет, прежде чем возник вопрос о возможности добавить к этой конфигурации тринадцатый шар.

Проблема тринадцати шаров появилась на свет 4 мая 1694г. В Тринити колледже в Кембридже в ходе спора между сэром Исааком Ньютоном и его современником, шотландским математиком Девидом Грегори.

Одной из обсуждаемых тем было распределение звезд на небосклоне. Звезды предполагались шарами определённой величины, и требовалось определить, сколько звёзд может быть расположено на том или ином удалении от Земли. От этой проблемы перешли к более простой задаче: сколько непересекающихся шаров одного и того же радиуса может касаться фиксированного шара того же радиуса?

Считается, что Ньютон полагал невозможным существование более 12 таких шаров, а Грегори оспаривал это мнение. Как бы то ни было, гипотеза о несуществовании тринадцатого шара получила название гипотезы Ньютона.

Одной из возможных причин скептицизма Грегори является тот факт, что 12 шаров, касающихся данного, расположены крайне неплотно. Конечно, все шары в конфигурации на рисунке 4 касаются друг друга (так же, как и ядра, окружающие любое из ядер в пирамиде на рисунке 3). Кажется, что ни один из них нельзя сдвинуть, не оторвав от поверхности центрального шара. Но ведь существуют и другие способы расположения шаров. Более того их бесконечно много!

Предположим, что все шары, касаются данного пронумерованы. Тогда существует способ поменять местами любые два из них, не изменив положения остальных, перекатывая все шары вдоль поверхности центрального шара.

Современное состояние проблемы

Гипотеза Ньютона очень долго оставалась недоказанной.

Первая работа, в которой была сделана попытка доказать гипотезу, появилась только в 1872г. Эта работа была написана немецким математиком Рудольфом Гоппе. Доказательство было длинное и трудное, в добавок к этому оно содержало ошибку.

Первое правильное доказательство было приведено в 1953г знаменитым голландским математиком Ван дер Варденом и известным немецким логиком К. Шютте.

За 50 лет, прошедших с момента появления на свет этого доказательства, теорема о тринадцати шарах была передоказана много раз самыми разными способами.

Я хочу изучить эту проблему, с помощью опытов выяснить: возможно, ли соприкосновение двенадцати шаров одного и того же радиуса с одним фиксированным шаром того же радиуса.

Изучая литературу, я провел опыты с теннисными шарами: 1) В этом опыте я брал шары и наклеивал их беспорядочно на один центральный шар. Таким образом, у меня получилось, что таких шаров всего 11, но конфигурация очень не плотная.

2) Проводя опыт пользуясь описанием его в исторической справке, я выяснил, что таких шаров 12. 3)Этот опыт очень похож на первый, но шары я наклеивал последовательно. Сначала я наклеил 6 шаров вокруг данного так, что все они касаются соседних им шаров. Далее, сверху и снизу я наклеил еще по три шара, они так же касаются центрального и других соседних им шаров. Итак, у меня получилась конфигурация из 12 шаров.

Таким образом, в каждом опыте мне удалось прислонить к центральному шару не более 13 шаров одного и того же радиуса.

В будущем я планирую провести некоторые опыты с помощью компьютерной программы AutoCAD R14 RU.

По завершению своей работы я пришел к следующему выводу – контактное число шара равно 12.

Таким образом, я убедился, почему задачу по нахождению контактного числа шара называется «проблема тринадцати шаров»

В дальнейшем я решил изучить некоторые факты сферической геометрии непосредственно касающихся «проблемы тринадцати шаров» и с помощью компьютерной программы провести подробное исследование «проблемы тринадцати шаров».

Привожу решения к интересной задаче, описанной в моём предыдущем посте:Имеется 12 шаров и рычажные весы. Известно, что один из шаров отличается по весу от остальных, при этом неизвестно тяжелее он или легче.
Каким образом, при помощи лишь трёх взвешиваний найти отличающийся шар?

_________________________________________________________________________________________

Задача достаточно сложна, хотя решить её в состоянии буквально каждый.
Правильный ответ дали kvicks и kolay, с чем я их и поздравляю!
P.S.: Если вы ещё не сдалишь, и, возможно, найдёте решение — поделитесь им в предыдущем посте.

Моё решение:
(для упрощения привожу самую сложную из возможных ситуаций, решения более лёгких ситуаций очевидны)
Делим 12 шаров на 3 группы по 4 шара в каждой.

Взвешиваем две группы шариков, они оказываются не равны в весе, следовательно все остальные шары имеют нормальный вес.
Пометим для простоты шарики из лёгкой группы буквой (л), тяжелые соответственно (т), а шарики с нейтральным весом (0).

(лллл) — (тттт)      // (0000) — отбрасываемые

Отбпросим из каждый группы по одному шарику, а имеющиеся поменяем следующим образом, добавив шары из нейтральной группы:

(ллтт) — (лт00)      // (лт)

Если левая чаша окажется легче остаются (ллт) если же тяжелее то (ттл).
Допустим левая чаша оказалась легче. Отбрасываем один лёгкий и взвешиваем шарики следующим образом с добавлением нейтральных:
(лт) — (00)            // (л)

Если левая чаша оказалась легче, то искомый шар (л), если тяжелее то (т), если чашы равны — отброшенный.

Решение kvicks:
(лллл) — (тттт)      // (0000)
(лттт) — (т000)      // (ллл)
(т) — (т)                 // (т)

взвешиваем 4 и 4. если равновесие то шар в оставшихся четырёх, из них берём два и меняем на 2 на одной из чашек весов, если равновесие остаётся, из оставшихся двух берём один и меняем с шаром на весах.
если не равновесие то из однй чаши берём три шара и убираем, на их место перекладываем три шара из другой чаши, на место этих кладём 3 нормальных шара. Если неравновесие меняется, то отличающийся шар в трёх, что мы переложили. если вдруг равновесие — то он в трёх что мы убрали. Если неравновесие осталось то он в тех двух что мы не поменяли. Если он в двух — то мы просто менаяем один на нормальный.
Если он в трёх что мы убрали, то тут надо вспомнить из какой чаши весов мы их убрали — тяжёлой или лёгкой (например тяжёлой) — и тогда взвесить два из этих трёх друг против друга — либо равновесие (тогда оставшийся, либо тот, что на перевешивающей чаше). Если он в трёх, что мы переложили, то тогда один из этих трёх мы перекладываем обратно (тогда неравновесие опять меняется) , один меняем на нормальный (наступает равновесие если он) и один оставляем (чаша весов не меняется если он)

Решение kolay:
(лллл) — (тттт)       // (0000)
(тттлл) — (т0000)   // (лл)
(л) — (л)                  // (т)

— Первое взыешивание:
две кучки по 4 шара на весах и 4 шара на земле. (????/????)????

1. Если на весах паритет, получаем 8 эталонных шаров и 4 неизвестных. !!!!!!!! ????
— Второе взвешивание: На весах два эталонных шара против 2х неизвестных на земле еще 2 неизвестных (!!/??)??.
Если паритет, значит девиант среди оставшихся 2х на земле. Если отклонение, то он среди неизвестных на весах.
— Третье взвешивание: Берем оставшихся 2 неизвестных, один из них сравниваем с эталонным. (!/?)?
Если отклонение, то он виноват, если паритет, то виноватый на земле.

2. Если на весах отклонение, получаем 4 эталонных шара на земле, 4 «легких» и 4 «тяжелых» !!!! <<<< >>>>
— Второе взвешивание: На весах 4 эталонных и 1 тяжолый против 3х тяжелых и двух легких. Еще 2 легких на земле.
(!!!!>/>>><<)<<
2.1 Если паритет, то
— третьим взвешиванием сравниваем 2 оставшихся на земле шара и выбираем тот что легче..

2.2 Если Левая сторона тяжелее, то остается тяжелый шар с левой стороны и два легких с правой. ><<
— Третье взвешивание: сравниваем два легких, тяжелый на земле ( Тот что легче — искомый, или же оставшийся на земле, если на весах равенство.

2.3 Если Правая сторона тяжелее, то один из трех тяжелых — тот, что мы ищем. >>>
— Третье взвешивание. Взвешиваем два тяжелых, один оставляем на земле. (>/>)>
Нам нужен тот, что тяжелее на весах или оставшийся на земле, если на весах равенство.

Этой задачей поделился со мной Влад. Он на фото.

Понравилась статья? Поделить с друзьями:
  • Как в андройде найти мои файлы
  • Как найти песню по напеву без слов
  • Как найти свой исполнительный лист по номеру
  • Как найти работу на филиппинах
  • Как найти антиплагиат вуз