JavaRush /Java Blog /Random-ID /Kebugaran otak. Tugas saat ini untuk meningkatkan keteram...

Kebugaran otak. Tugas saat ini untuk meningkatkan keterampilan pemrograman

Dipublikasikan di grup Random-ID
Seperti yang kita ketahui, programmer secara rutin harus berpikir, menganalisis, dan terkadang menemukan solusi yang tidak jelas untuk berbagai masalah, besar maupun kecil. Untuk melakukan ini, pembuat kode dipaksa untuk secara aktif menggunakan otak mereka, yang sudah merupakan mainan yang sangat "mahal" - otak manusia, yang memiliki massa tidak lebih dari 1,5-2% berat badan, mengkonsumsi sekitar 25% dari seluruh energi. Dan ini untuk rata-rata orang, dan berapa persentase energi yang “dikonsumsi” oleh otak seorang programmer yang secara aktif mengerjakan proyek yang kompleks sangat menakutkan untuk dibayangkan (dan para ilmuwan, kemungkinan besar dari Inggris, belum menentukan indikator pastinya). Kebugaran otak.  Tugas saat ini untuk meningkatkan keterampilan pemrograman - 1Kesimpulan apa yang dapat diambil dari semua ini? Untuk menjadi seorang programmer yang baik, dan kemudian tetap menjadi seorang programmer, Anda perlu memompa otak Anda, mengajarinya untuk berpikir dan mencari solusi tanpa stres yang berlebihan dan secara teratur. Basi, seperti semua metode yang sangat efektif, tetapi efektif. Untuk membantu Anda menjaga materi abu-abu di tengkorak Anda dalam kondisi yang baik, hari ini kami telah menyiapkan pilihan sumber daya yang bagus dengan teka-teki dan teka-teki untuk pemrogram, dan juga menerjemahkan beberapa masalah menarik dari bahasa Inggris.

Situs web dengan tugas untuk pemrogram

Hampir semua sumber daya dalam koleksi ini berbahasa Inggris, sehingga Anda akan memiliki kesempatan tidak hanya untuk berlatih memecahkan masalah dan teka-teki coding, tetapi juga mendapatkan latihan tambahan dalam menggunakan bahasa Inggris dalam pemrograman. Kebugaran otak.  Tugas saat ini untuk meningkatkan keterampilan pemrograman - 2
  1. Koderbyte

    Salah satu sumber berbahasa Inggris paling populer dengan tugas untuk pemrogram. Di dalamnya Anda dapat menemukan lebih dari 200 tugas dengan berbagai tingkat kerumitan, yang dapat diselesaikan langsung di situs online menggunakan salah satu dari 10 bahasa pemrograman yang tersedia (termasuk Java).

  2. Praksis Pemrograman

    Praksis Pemrograman adalah blog populer yang secara rutin menerbitkan berbagai tugas menarik dan, yang paling penting, relevan bagi para programmer. Umum untuk berbagai bahasa pemrograman. Tantangan ini dirancang untuk membantu pembuat kode memahami perubahan terkini dalam teknologi dan pendekatan pemrograman dalam praktiknya.

  3. Pembuat Kode Teratas

    TopCoder adalah komunitas programmer aktif yang senang mengembangkan dan memecahkan berbagai masalah. Tugas-tugas baru diterbitkan secara berkala, penyelesaian yang berhasil tidak hanya memberikan kesempatan untuk berlatih dan meningkatkan SDM Anda, tetapi juga menerima hadiah uang tunai.

  4. KodeKata

    CodeKata adalah blog dengan banyak masalah yang cukup orisinal dan jenaka bagi para programmer, ditemukan oleh Dave Thomas, salah satu penulis buku terkenal Pragmatic Programmer (“The Pragmatic Programmer. The Path from Apprentice to Master”). Permasalahan pada website CodeKata beragam, dan solusinya relevan dengan pekerjaan pemrograman nyata.

  5. Hakim Universitas PekingOnline untuk ACIP/ICPC

    Peking University JudgeOnline for ACIP/ICPC merupakan halaman Peking University yang berisi tugas-tugas programmer dari berbagai kompetisi dan kompetisi. Situs ini diperbarui secara berkala, masalah dapat diselesaikan secara real time, dan solusi dievaluasi oleh komisi ahli Universitas Peking.

  6. Proyek Euler

    Situs lama terkenal lainnya dengan tugas serius dan tidak sepele. “Proyek Euler adalah kumpulan masalah matematika dan pemrograman kompleks yang membutuhkan lebih dari sekedar pengetahuan matematika untuk menyelesaikannya. Kompleksitas masalahnya bervariasi dan pendekatannya didasarkan pada pembelajaran rantai induktif. Artinya, setelah memecahkan satu masalah, Anda akan menemukan konsep baru yang memungkinkan Anda memecahkan masalah lain yang sebelumnya tidak dapat dipahami,” kata pencipta sumber daya tersebut.

  7. WTF Harian

    The Daily WTF adalah komunitas pemrograman populer lainnya yang beroperasi berdasarkan prinsip Bring Your Own Code (BYOC), yang berarti pengembang membagikan kode sumber mereka sendiri untuk memecahkan berbagai masalah asli. “Tujuan BYOC sederhana: untuk memberi Anda, sebagai pengembang perangkat lunak, kesempatan untuk meningkatkan keterampilan pemrograman Anda dengan memecahkan masalah yang sedikit lebih menarik daripada hal-hal membosankan biasanya,” kata situs tersebut.

  8. proger

    Situs berbahasa Rusia yang luar biasa dengan tugas algoritmik yang digunakan untuk menguji keterampilan para spesialis selama wawancara teknis di perusahaan seperti Google, Facebook, dan lainnya. Ada banyak soal yang disajikan, termasuk yang orisinal, dengan tingkat kesulitan yang berbeda-beda.

  9. Kontes Pemrograman Al Zimmermann

    Situs web penulis terkenal tempat “programer gila bersaing untuk mendapatkan ketenaran dan hadiah keren”. Kompetisi diadakan sekali atau dua kali setahun, dan nama-nama programmer terkemuka dipublikasikan di halaman utama sumber daya, yang tentunya menarik minat dari perusahaan-perusahaan yang menjanjikan.

  10. Hakim Timus Online

    Salah satu arsip masalah pemrograman berbahasa Rusia terbesar dengan sistem pemeriksaan otomatis. Sumber utama tugas arsip adalah kompetisi di Universitas Federal Ural, Kejuaraan Ural, dan acara program regional lainnya. Timus Online Judge juga memungkinkan Anda untuk mengambil bagian dalam versi online dari sebagian besar kompetisi yang diadakan secara rutin di Universitas Federal Ural.

5 tugas menarik

Berikut beberapa teka-teki menarik bagi mereka yang tidak sabar untuk memulai. Kebugaran otak.  Tugas saat ini untuk meningkatkan keterampilan pemrograman - 3
  1. Teka-teki tentang blender dari Steve Jobs

    Tantangan: Anda dikecilkan hingga seukuran nikel dan dimasukkan ke dalam blender. Berat badan Anda pun berkurang sehingga kepadatan tubuh Anda tetap sama. Bilahnya akan mulai berputar setelah 60 detik. Tindakan Anda?

    Ini adalah tugas klasik yang biasanya dikaitkan dengan Steve Jobs, pendiri Apple. Ketika Jobs kembali ke Apple pada tahun 1997, dia secara pribadi mewawancarai setiap karyawan di perusahaan tersebut dan menggunakan tugas ini sebagai salah satu ujian pertamanya.

    Larutan:

    Tugas ini memiliki lebih dari satu solusi, karena berfungsi untuk mengevaluasi kreativitas karyawan, kemampuan untuk dengan cepat menemukan jalan keluar dari situasi stres dan berpikir di luar kebiasaan. Inilah solusi paling klasik: berbaringlah sedekat mungkin dengan bagian bawah blender sehingga bilahnya berputar di atas Anda.

  2. Berapa banyak orang yang hadir di konferensi tersebut?

    Tantangan: Di sebuah konferensi, setiap tamu berjabat tangan dengan orang lain. Ada 66 jabat tangan. Berapa banyak orang yang menghadiri konferensi ilmiah?

    Tugas pemrograman klasik lainnya yang sering diberikan pada tahap awal wawancara teknis.

    Solusi klasik:

    Katakanlah ada n orang di konferensi tersebut. Orang pertama berjabat tangan dengan orang lain: n-1 kali (n-1 orang). Orang kedua berjabat tangan dengan orang lain (tetapi bukan yang pertama, karena ini sudah dilakukan): n-2 kali. Orang ketiga berjabat tangan dengan orang lain: n-3.

    Jadi jumlah jabat tangan yang dilakukan adalah = (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 ATAU n = -11

    Opsi -11 dikecualikan, jadi jawabannya adalah 12 orang.

  3. Bar dan 25 kursi.

    Teka-teki klasik dan sangat cerdik lainnya, kali ini lebih sulit.

    Задача: Есть бар с 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. Случай в поле.

    Ну и напоследок еще одна старая классическая, даже можно сказать баянистая, задачка на логическое мышление.

    Задача: Среди пшеничного поля нашли мертвого мужчину. Он крепко сжимал в руках спичку. Отчего умер человек?

    Решение:

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

Эпилог

Nah, bagi mereka yang menganggap masalah ini terlalu sederhana atau terlalu umum, kami memiliki masalah Java yang lebih kompleks , termasuk masalah rumit yang sering diberikan saat wawancara dengan programmer Java. Jika Anda mengetahui teka-teki menarik untuk programmer atau ingin berbagi tugas favorit Anda, tulis di komentar.
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION