JavaRush /Java блогы /Random-KK /Ми фитнес. Бағдарламалау дағдыларын жетілдіруге арналған ...

Ми фитнес. Бағдарламалау дағдыларын жетілдіруге арналған ағымдағы тапсырмалар

Топта жарияланған
Біз білетіндей, бағдарламашылар жүйелі түрде ойлануға, талдауға және кейде үлкенді-кішілі әртүрлі мәселелердің анық емес шешімдерін табуға мәжбүр болады. Ол үшін codeерлер өздерінің миын белсенді түрде қолдануға мәжбүр, бұл қазірдің өзінде өте «қымбат» ойыншық - дене салмағының 1,5-2% -нан аспайтын массасы бар адам миы барлық энергияның шамамен 25% тұтынады. Бұл қарапайым адам үшін және күрделі жобада белсенді жұмыс істейтін бағдарламашының миы энергияның қанша пайызын «тұтынатынын» елестету қорқынышты (және ғалымдар, ең алдымен, британдықтар, нақты көрсеткішті әлі анықтай алмаған). Ми фитнес.  Бағдарламалау дағдыларын жетілдіру бойынша ағымдағы тапсырмалар – 1Осының барлығынан қандай қорытынды жасауға болады? Жақсы бағдарламашы болу үшін, содан кейін сол болып қалу үшін сіз миыңызды шамадан тыс стресссіз және жүйелі түрде ойлауға және шешім табуға үйретуіңіз керек. Trite, барлық шынымен тиімді әдістер сияқты, бірақ тиімді. Бас сүйегіңіздегі сұр затты жақсы күйде ұстауға көмектесу үшін бүгін біз бағдарламашыларға арналған басқатырғыштар мен басқатырғыштар бар жақсы ресурстардың таңдауын дайындадық, сонымен қатар ағылшын тілінен бірнеше қызықты есептерді аудардық.

Бағдарламашыларға арналған тапсырмалары бар веб-сайттар

Жинақтағы ресурстардың барлығы дерлік ағылшын тілінде, сондықтан сіз codeтау есептері мен басқатырғыштарды шешуге жаттығып қана қоймай, сонымен қатар бағдарламалауда ағылшын тілін қолдану бойынша қосымша тәжірибе алу мүмкіндігіне ие боласыз.Ми фитнес.  Бағдарламалау дағдыларын жетілдіру бойынша ағымдағы тапсырмалар – 2
  1. Кодерbyte

    Бағдарламашыларға арналған тапсырмалары бар ең танымал ағылшын тіліндегі ресурстардың бірі. Онда сіз қол жетімді 10 бағдарламалау тілінің (соның ішінде Java) бірін пайдаланып онлайн режимінде тікелей сайтта шешуге болатын әртүрлі деңгейдегі күрделіліктегі 200-ден астам тапсырмаларды таба аласыз.

  2. Праксисті бағдарламалау

    Programming Praxis - бұл бағдарламашыларға арналған әртүрлі қызықты және ең бастысы өзекті тапсырмаларды үнемі жариялайтын танымал блог. Бағдарламалау тілдерінің ауқымы үшін ортақ. Қиындықтар codeерлерге технологиядағы соңғы өзгерістерге және іс жүзінде бағдарламалау тәсілдеріне тез үйренуге көмектесу үшін жасалған.

  3. TopCoder

    TopCoder - әртүрлі мәселелерді әзірлеуді және шешуді ұнататын белсенді бағдарламашылар қауымдастығы. Жаңа тапсырмалар тұрақты түрде жарияланады, олардың сәтті шешімі сіздің HR тәжірибеңізді арттыруға және арттыруға мүмкіндік беріп қана қоймайды, сонымен қатар ақшалай сыйлықтарға ие болады.

  4. CodeKata

    CodeKata - бұл бағдарламашыларға арналған көптеген ерекше және тапқыр проблемалары бар блог, оны әйгілі прагматикалық бағдарламашы кітабының авторларының бірі Дэйв Томас ойлап тапты («Прагматикалық бағдарламашы. Шәкірттен шеберге дейінгі жол»). CodeKata веб-сайтындағы мәселелер әртүрлі және шешімдер нақты бағдарламалау жұмысына сәйкес келеді.

  5. ACIP/ICPC үшін Пекин университетінің судьясы

    Peking University JudgeOnline for ACIP/ICPC — Пекин университетінің әртүрлі конкурстар мен жарыстардағы бағдарламашыларға арналған тапсырмалары бар беті. Сайт үнемі жаңартылып отырады, проблемаларды нақты уақыт режимінде шешуге болады және шешімдерді Пекин университетінің сарапшылар комиссиясы бағалайды.

  6. Эйлер жобасы

    Маңызды және тривиальды емес тапсырмалары бар тағы бір ескі танымал сайт. «Эйлер жобасы – шешу үшін тек математиканы білуді ғана қажет ететін күрделі математикалық және бағдарламалау есептерінің жинағы. Мәселелердің күрделілігі әртүрлі және әдіс индуктивті тізбекті оқытуға негізделген. Яғни, бір мәселені шешкеннен кейін, бұрын түсінуге болмайтын басқа да мәселелерді шешуге мүмкіндік беретін жаңа концепция ашылады», - дейді ресурс жасаушылар.

  7. Күнделікті WTF

    Daily WTF - бұл «Өз codeыңды әкел» (BYOC) принципі бойынша жұмыс істейтін тағы бір танымал бағдарламалау қауымдастығы, яғни әзірлеушілер әртүрлі бастапқы мәселелерді шешу үшін өздерінің бастапқы codeтарын бөліседі. «BYOC-тың мақсаты қарапайым: бағдарламалық жасақтаманы әзірлеуші ​​ретінде сізге әдеттегі, қызықсыз мәселеден сәл қызықтырақ мәселені шешу арқылы бағдарламалау дағдыларын жақсарту мүмкіндігін беру», - делінген сайтта.

  8. Тпрогер

    Google, Facebook және басқалар сияқты компанияларда техникалық сұхбат кезінде мамандардың дағдыларын тексеру үшін қолданылатын алгоритмдік тапсырмалары бар тамаша орыс тіліндегі сайт. Ұсынылған көптеген мәселелер, соның ішінде әртүрлі қиындық деңгейлері бар түпнұсқалар.

  9. Аль Циммерманның бағдарламалау конкурстары

    «Ессіз бағдарламашылар атақ пен тамаша жүлделер үшін жарысатын» танымал авторлық веб-сайт. Жарыстар жылына бір немесе екі рет өткізіліп, көрнекті бағдарламашылардың есімдері ресурстың басты бетінде жарияланады, бұл келешегі бар жұмыс берушілердің қызығушылығын тудыратыны сөзсіз.

  10. Timus онлайн судьясы

    Автоматты тексеру жүйесі бар бағдарламалау мәселелерінің орыс тіліндегі ең үлкен мұрағаттарының бірі. Мұрағатқа арналған тапсырмалардың негізгі көзі - Орал федералды университетіндегі жарыстар, Орал чемпионаттары және басқа да аймақтық бағдарламалау іс-шаралары. Timus Online Judge сонымен қатар Орал федералды университетінде үнемі өтетін көптеген жарыстардың онлайн нұсқаларына қатысуға мүмкіндік береді.

5 қызықты тапсырма

Бастауды күте алмайтындар үшін қызықты басқатырғыштар бар. Ми фитнес.  Бағдарламалау дағдыларын жетілдіру бойынша ағымдағы тапсырмалар – 3
  1. Стив Джобстың блендер жұмбағы

    Қиындық: Сіз никель өлшеміне дейін кішірейіп, блендерге лақтырылдыңыз. Сіздің салмағыңыз азайып, дене тығыздығы өзгеріссіз қалады. Пышақтар 60 секундтан кейін айнала бастайды. Сіздің әрекеттеріңіз?

    Бұл әдетте Apple негізін қалаушы Стив Джобспен байланысты классикалық тапсырма. Джобс 1997 жылы Apple-ге қайтып оралғанда, ол компаниядағы әрбір қызметкермен жеке сұхбаттасып, бұл тапсырманы өзінің алғашқы сынақтарының бірі ретінде пайдаланды.

    Шешімі:

    У данной задачи больше одного решения, так How она служит для того, чтобы оценить креативность сотрудника, умение быстро находить выход из стрессовой ситуации и неординарно мыслить. Вот наиболее классический вариант решения: лечь How можно плотнее к днищу блендера, чтобы его лезвия крутorсь над вами.

  2. Сколько людей было на конференции?

    Задача: На конференции каждый гость пожал руку всем остальным. Было 66 рукопожатий. Сколько человек было на научной конференции?

    Другая классическая программистская задача из тех, которые часто дают на первых этапах технических собеседований.

    Классическое решение:

    Допустим, на конференции было n человек. Первый человек пожимает руку всем остальным: n-1 раз (n-1 человек). Второй человек пожимает руку всем остальным (но не первому, так How это уже было сделано): n-2 раза. 3-й человек пожимает руку всем остальным: n-3.

    Таким образом, общее количество рукопожатий будет = (n-1) + (n-2) + (n-3) + …… 0;
    = (n-1) * (n-1 + 1) / 2 = (n-1) * n / 2 = 66
    = n ^ 2 -n = 132
    = (n-12) (n + 11) = 0;
    = n = 12 ИЛИ n = -11

    Вариант -11 исключен, поэтому ответ: 12 человек.

  3. Бар и 25 стульев.

    Еще одна классическая и весьма остроумная задачка, на этот раз посложнее.

    Задача: Есть бар с 25-ю стульями, которые расположены в линию. Посетители этого бара — антисоциальные личности, поэтому, когда они заходят в бар, то всегда стараются найти место How можно дальше от остальных. Если постоянный посетитель заходит в бар и обнаруживает, что свободного места без соседства с кем-либо нет, он разворачивается и уходит. Владелец бара, естественно, хочет видеть можно больше посетителей. Владелец может указать место, на которое нужно сесть, только первому клиенту, тогда How все остальные сами выберут себе самое дальнее место от других. Предположим, что места пронумерованы от 1 до 25. Какое место должно быть занято первым?

    Решение:

    Первый человек должен сесть на стул 9 or 17 (из-за симметрии, не имеет значения, Howое именно из двух мест). Предположим, он выбирает место 9. Следующий человек выберет место 25, так How оно самое дальнее от места 9. Следующие два человека займут места 1 и 17. Следующие три займут 5, 13 и 21. Следующие шесть будут занимать стулья 3, 7, 11, 15, 19 и 23. Таким образом, в баре разместится максимум 13 человек, и никто не будет сидеть рядом с другим человеком. Если место, отличное от 9 or 17, будет выбрано первым, общее количество посетителей бара будет меньше 13.

  4. Деньги в карманах и религия.

    Интересно составленная задача на нахождение алгоритма.

    Мәселе: Ер адамның қалтасында ақшасы бар, оның жалпы сомасы 90 доллардан 95 долларға дейін. Жолда ол бірнеше храмдарға барады. Ол ғибадатханаға кірген бойда оның ақшасы екі еселеніп, әр ғибадатханаға 100 доллардан садақа береді. Нәтижесінде соңғы ғибадатханаға барғаннан кейін оның қалтасы бос болады. Енді сұрақ: оның бастапқыда қанша ақшасы болды және қанша храмдарға барды?

    Шешімі:

    Біз соңғы ғибадатханадан санауды бастаймыз:

    Соңғы ғибадатханаға барғаннан кейін (1) оның 0 ақшасы қалды, сондықтан => (0 + 100) / 2 = 50. Соңғы ғибадатханаға барар алдында оның 50 доллары болды.

    Алдыңғы ғибадатханаға барар алдында (2), ол (50 + 100) / 2 = 75.
    Алдыңғы ғибадатханаға барар алдында (3), ол (75 + 100) / 2 = 87,5 болды.
    Алдыңғы ғибадатханаға барар алдында (4), ол (87,5 + 100) / 2 = 93,75 болды.
    Алдыңғы ғибадатханаға барар алдында (5), ол (93,75 + 100) / 2 = 96,875 - сома бастапқы шарттардан асып түседі.
    Жауап: Адам бастапқыда $93,75 болды және 4 храмға барды.

  5. Далада болған оқиға.

    Ақырында, тағы бір ескі классика, тіпті аккордеонға ұқсас логикалық ойлау мәселесін айтуға болады.

    Мәселе: Бидай алқабынан өлі адам табылды. Ол сіріңкені қолына мықтап ұстады. Неліктен адам өлді?

    Шешімі:

    Ер адам үш жолаушымен бірге ұшақта ұшып бара жатқан. Қозғалтқыш тоқтап, ұшақ құлай бастады. Ер адамдар төртеуіне үш-ақ парашют бар екенін біліп, сіріңке тарта бастады. Біреуі қысқасын тартып алып, парашютсіз секіруге мәжбүр болды.

Эпилог

Бұл мәселелерді тым қарапайым немесе тым жалпы деп санайтындар үшін бізде күрделірек Java мәселелері бар , соның ішінде Java бағдарламашыларына сұхбат кезінде жиі берілетін күрделі мәселелер . Егер сіз бағдарламашыларға арналған қызықты жұмбақтарды білсеңіз немесе сүйікті тапсырмаңызды бөліскіңіз келсе, түсініктемелерде жазыңыз.
Пікірлер
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION