JavaRush/Java блог/Random/Логические задачи на собеседовании
Юрий Кузнецов
35 уровень

Логические задачи на собеседовании

Статья из группы Random
участников
Вам предстоит разобрать 5 логических задач плюс 4 задачки по Java от меня. Задачи, которые встречались на собеседованиях и решения к ним есть в интернете. Приведу топ-список из тех, с которыми я столкнулся на собеседованиях. Логические задачи на собеседовании - 1
  1. Четыре человека в шляпах

  2. Задача про мост и фонарик

  3. Из 9 монет одна фальшивая: она легче. Как найти ее за два взвешивания на чашах весов?

  4. Почти то же, что и прошлая задача, только весы могут быть любыми. Задача "5 банок с таблетками".

  5. "Бесконечный поезд"

На засыпку вопросы которые задавали на собеседованиях:

  1. Напишите несколько способов реализация синглтона(одиночка) в java.

  2. Что произойдет в этом коде?

    Логические задачи на собеседовании - 2
    class MyExc1 extends Exception{}
    class MyExc2 extends Exception{}
    class MyExc3 extends Exception{}
    
    public class Test {
        public static void main(String[] args) throws Exception {
            try {
                System.out.print(1);
                p();
            }catch (MyExc2 e){
            }
            finally {
                throw new MyExc3();
                System.out.print(2);
            }
        }
        public static void p() throws Exception {
            try {
                throw new MyExc1();
                 } catch (MyExc1 myExc1) {
                throw new MyExc2();
            }finally {
                System.out.println(3);
            }
        }
    }
  3. Задачка от меня, потому что не помню, какой пример там был

    public class Test {
        public static void main(String[] args)  {
            String s = "Hello";
            String s1 = "Hello";
            String s2 = new String("Hello");
    
            System.out.println(s == s1);
            System.out.println(s1 == s2);
    
            Integer i = 111;
            Integer i1 = 111;
            Integer i2 = new Integer(111);
            Integer i3 = new Integer(111);
    
            Integer i4 = -129;
            Integer i5 = -129;
            Integer i6 = new Integer(-129);
    
            System.out.println(i == i1);
            System.out.println(i1 == i2);
            System.out.println(i2 == i3);
    
            System.out.println(i4 == i5);
            System.out.println(i5 == i6);
    
            System.out.println(i6 == -129);
        }
    }
  4. Какой будет результат выполнения программы? И какой результат получим, если раскоментировать последние две строчки?

    class Test{
        private int id;
        private Integer id2;
    
        public Test(int id, Integer id2) {
            System.out.println("Создаем екзепляр Test");
            this.id = id;
            this.id2 = id2;
        }
    
        public Integer doIt(){
            return id + id2;
        }
    }
    class Test1{
        private Test test;
        private static int i;
    
        public Test1() {
            System.out.println("Создаем екзепляр Test1");
            this.test = new Test(i, 10);
        }
        public Test getTest() {
            return test;
        }
    }
    
    class Main {
        public static void main(String[] args)  {
            Test1 test1 = new Test1();
            System.out.println(test1.getTest().doIt());
           // Test test = new Test(null, 1);
           // test.doIt();
        }
    }
    Логические задачи на собеседовании - 3
P.S.: Ответы на задачи по логике можно все найти в интернете. Кому интересно, прикрепляю прошлый пост про собеседования java developer
Комментарии (7)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Alesha
Уровень 22
18 октября 2018, 19:38
Четвёртая логическая задача не "почти такая же", а точно такая же, как и третья. Аффтар поправь ссылку.
vinsler
Уровень 35
Expert
16 октября 2018, 11:09
По веревкам тоже не хватает условия, веревки могут быть разной длинны, время горения одной веревки 60 мин, горение по длинне не равномерное, но в целом будет 60 мин.
Юрий Кузнецов
Уровень 35
16 октября 2018, 12:17
Спасибо, сейчас приеду домой - исправлю)
vinsler
Уровень 35
Expert
16 октября 2018, 10:57
Про шляпы кривое условие, ))) должно быть: всем четверым задается вопрос, какого цвета у вас шляпа? И уже только на этом этапе второй может раскинуть мозгами и додуплить, что если кто-то за мной молчит, то наверно он сомневается итп, но он может и не догадаться, может не понять условие, может затормозить с решением, тогда второй тоже ошибется. )))
Юрий Кузнецов
Уровень 35
16 октября 2018, 12:15
Ну про эту задачу прям слово в слово написал, как было написано на листочке, когда собеседование проходил, никаких условий даже не было))
vinsler
Уровень 35
Expert
16 октября 2018, 16:09
да я смотрел условия в инете, тоже криво, ))) просто с ходу не понятно вообще что можно, а чего нет, я бы сказал проще, может быть 2 и 3, так как можно спросить друг у друга какие шляпы вы видите? )))
Stanislav
Уровень 21
14 октября 2018, 23:10
Не помешали бы ответы под спойлером