Головоломки для програмування та коди для гольфу

Q & A для програмування головоломки ентузіастів і код гольфістів

13
Транспонований, прайме, ой мій!
Завдання проста: ваша програма читає ціле число як вхідне і друкує, чи є простим чи ні. Ви можете надрукувати "так / ні", "правда / неправда" або все, що однозначно ідентифікує результат. Завдання полягає в тому, що код повинен працювати зі своїми транспонованими рядками та стовпцями. Щоб виключити очевидне рішення (найкоротше …

4
Приємно залишатися в YMCA
"YMCA" - популярна диско-пісня села People, яка має добре відомий танець . Напишіть найкоротшу програму, щоб вивести великі літери "Y", "M", "C" та "A", синхронізовані з хором пісні. Як правило, по одному рядку, що надсилається на стандартний вихід, йде один лист. Це перш за все для спрощення програм, що підлягають …
15 code-golf  music 

20
Створити сітку сум
Створіть сітку 7 на 7, заповнену випадковими числами. Однак у клітинках із непарним номером рядка та стовпця (починаючи з 0) потрібно використовувати суму навколишніх комірок. Ось невеликий приклад із сіткою 3 на 3 (підкреслений квадратною шрифтом): 2 2 2 2 16 2 2 2 2 Ось приклад сітки 7 на …

5
Найшвидший сортування в BrainF ***
Після впровадження QuickSort у BrainF *** , я зрозумів, що це, мабуть, не так швидко. Операції, які є O (1) у звичайних мовах (наприклад, індексація масиву), у BF значно довші. Більшість правил для ефективного сортування можуть бути викинуті у вікно, коли ви кодуєте в таріті Тюрінга. Тож тут є завдання …

12
Перетворити з бінарного в негабінарне
З урахуванням двійкового цілого числа, включно між 0і 1111111111111111(тобто 16-бітовим цілим числом без підпису) як вихід, виведіть те саме ціле число в негабінарному . Вхід може бути в будь-якому форматі, який є найбільш зручним для вашої мови; Наприклад, якщо програмі легше обробляти введення з 16 цифрами, як 0000000000000101, а не …

8
Реалізуйте S-box Rijndael
S-box Rijndael - це часто використовувана операція при шифруванні та дешифруванні AES . Зазвичай він реалізується у вигляді 256-байтної таблиці пошуку. Це швидко, але означає, що вам потрібно перерахувати 256-байтну таблицю пошуку у своєму коді. Надіюсь, хтось із цієї натовпу міг би зробити це з меншим кодом, враховуючи основні математичні …

25
Обчисліть пі до 5 десятків
Це відбувається з http://programmers.blogoverflow.com/2012/08/20-controversial-programming-opinions/ "Враховуючи, що Pi можна оцінити за допомогою функції 4 * (1 - 1/3 + 1/5 - 1/7 + ...) з більшою кількістю термінів, що дають більшу точність, напишіть функцію, яка обчислює Pi з точністю до 5 знаків після коми. " Зауважимо, оцінку необхідно виконати шляхом обчислення …
15 code-golf  pi 

14
Обчисліть привілеї користувача на CodeGolf.SE
Змагання Ваша мета полягає в тому, щоб написати якомога коротшу програму, яка буде приймати перелік подій (таких як nadvote, downvote тощо) та повертати репутацію користувача та привілеї, які він заробив. Які події? Ось діаграма подій, перелічена в порядку заробленої репутації: -15 answer unaccepted -10 answer unupvoted -5 question unupvoted -2 …

7
Що буде далі?
Враховуючи розділений пробілом список цілих чисел, ваше завдання - знайти наступне ціле число в послідовності. Кожне ціле число в послідовності є результатом застосування єдиної математичної операції ( +, -, *або /) до попереднього цілому, і кожна послідовність складається з змінного числа таких операцій (але не більше 10). Жодна послідовність не …

10
Єгипетські піраміди
Велика піраміда в Гізі, найбільша піраміда в Єгипті, є не тільки найстарішим із семи чудес Стародавнього світу, але також є єдиним, що залишається в основному неушкодженим. Єгипетські піраміди можуть зайняти до 20 років, щоб побудувати, і вони такі великі, що Аль-Азіз Утман, син великого Саладіна, який розгромив хрестоносців, змушений був …

12
Союз інтервалів
Давши перелік інтервалів, виконайте об'єднання їх та зменшіть перекриття. Це означає, що деталі, що перекриваються, зменшуються. ( [a, b] U [c, d] = [a, d]якщо b > c) Припускаючи всі a <b через усі проміжки часу [a, b]. Реалізуйте як функцію списку вхідних інтервалів -> переліку вихідних інтервалів. Найкоротший код …
15 code-golf 

17
Код-Гольф: Решіткові точки всередині кола
На наступному малюнку показана проблема: Напишіть функцію, яка, задаючи ціле число, як радіус кола, обчислює кількість точок решітки всередині центрального кола (включаючи межу). На зображенні показано: f[1] = 5 (blue points) f[2] = 13 (blue + red points) інші значення для вашої перевірки / налагодження: f[3] = 29 f[10] = …

30
Послідовність веселих стрибків
Послідовність n> 0 цілих чисел називається веселою перемичкою, якщо абсолютні значення різниці між послідовними елементами приймають усі значення від 1 до n-1. Отже, послідовність [4,1,2,4] має абсолютні відмінності [3,1,2], що еквівалентно безлічі [1,2,3] (від 1 до n-1, де n - довжина вихідної послідовності) тому це веселий джемпер. Послідовності мають довжину …

5
Код-Гольф: Вимкнено світло!
Виграє найкоротший код для передачі всіх можливостей Було створено багато ігор на основі сітки, які починаються із сітки вогнів, що вмикаються. Натискання будь-якого з вогнів призводить до вимкнення цього світла та чотирьох сусідніх до нього. Коли світло вимкнено, воно вимикається або вмикається, залежно від того, чи було воно ввімкнено чи …

6
Розкладіть перестановку на цикли
Існує відома теорема про те, що будь-яка перестановка може бути розкладена на набір циклів . Ваше завдання - написати найкоротшу можливу програму для цього. Вхід: Дві лінії. Перший містить число N, другий містить Nвиразні цілі числа в діапазоні, [0,N-1]розділеному пробілами. Ці цілі числа представляють перестановку Nелементів. Вихід: По одному рядку …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.