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

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

3
[Br] їде Code Code Golf [Ba] d
Розглянемо наступний рядок: Tin Snips Цей рядок містить кілька атомних символів у періодичній таблиці . Ми могли б переписати цей рядок, щоб визначити декілька з них: [Ti][N] [Sn][I][P][S] Звичайно, ми могли також написати це так: T[In] [S][Ni][P][S] Правила переписування вводу такі: Випадок введення не має значення з точки зору відповідності …

30
Визначте, чи містить масив щось інше, ніж 2
Візьміть масив, що складається з чисел або масивів, виведіть, якщо він містить лише 2s. Вихід повинен мати значення "truthy" або "falsey" (Вибачте, якщо це знищує відповіді) Випробування з правдивою справою [2] [2,2] [[2],[2,2],2] [] [[],[]] Випробування Фальсі [1] [22] [2,2,2,1] [[1,2],2] Стандартні лазівки заборонені. Застосовуються правила IO за замовчуванням . …

1
Перетворити λ-вирази в SK-вирази
Λ-числення , або лямбда - обчислення, є логічною системою , заснованої на анонімних функціях. Наприклад, це λ-вираз: λf.(λx.xx)(λx.f(xx)) Однак для цієї задачі ми спростимо позначення: Змініть λна \(щоб спростити введення):\f.(\x.xx)(\x.f(xx)) В .лямбда-заголовках непотрібно, тож ми можемо його відпустити:\f(\xxx)(\xf(xx)) Використовуйте позначення префікса Unlambda -style з `для застосування, а не писати обидві …

18
Намалюй мені (дивне) одиничне коло!
Вступ Ви можете знати і любити своє нормальне одиничне коло. Але математики божевільні, і тому вони абстрагували цю концепцію до будь-якої точки, яка задовольняє x*x+y*y=1. Оскільки криптографи 1 теж дивні, вони люблять обмежені поля та іноді кінцеві кільця (це не так, як у них є великий вибір), тому давайте поєднаємо …

6
Quandle Quandary I серія: Ідентифікація кінцевих Quandles
Напишіть програму, яка визначить, чи дана матриця являє собою квадрати. Quandle являє собою набір оснащений однією (некомутативними, неассоціатівное) операціями ◃ , яка задовольняє наступні аксіоми: Операція закрита, тобто a◃b = cзавжди є елементом множини, якщо aі bє елементами безлічі. Операція правої самостійно дистрибутивний: (a◃b)◃c = (a◃c)◃(b◃c). Операція розділена справа: для …

4
Локально переверніть поліном
Виклик Давши многочлен pз реальними коефіцієнтами порядку 1та ступеня n, знайдіть інший многочлен qступеня максимум nтакий, який (p∘q)(X) = p(q(X)) ≡ X mod X^(n+1), або іншими словами такий, p(q(X)) = X + h(X)де де hдовільний многочлен ord(h) ≥ n+1. Поліном qоднозначно визначається p. Для полінома , p(X) = a(n)*X^n + …

9
Перерахуйте двійкові дерева
Двійкові дерева Бінарне дерево - це дерево з вузлами трьох типів: кінцеві вузли, у яких немає дітей одинарні вузли, у яких одна дитина двійкові вузли, у яких по двоє дітей Ми можемо представити їх наступною граматикою, наведеною у BNF (форма Backus – Naur): <e> ::= <terminal> | <unary> | <binary> …

3
Проблема з сплавом на рафті (варіант рюкзака)
Перша головоломка від мене, пропозиції щодо вдосконалення з радістю отримали! Сценарій такий; Ви працюєте менеджером по рафтинговій компанії. Щоранку вам подають список бронювання, і вам доведеться сортувати їх за плотними навантаженнями. Напишіть програму або функцію на обраній вами мові, яка робить це за вас. Кожен пліт має максимум nклієнтів, і …

8
Керівництво алфавітом
Керівництво алфавітом Дано масив напрямків, де напрямки визначаються наступним чином: NW N NE W . E SW S SE Або як індекси (ви можете використовувати ці індекси для вказівок замість рядків вище): 0 1 2 3 . 4 5 6 7 Ви можете вибрати будь-який формат, підтримка обох не вимагається …

9
Чи це всередині набору Кантора?
Змагання Для цього завдання ви повинні визначити, чи є вказане число в наборі Кантора. Отже, спочатку давайте визначимо набір Кантора. Спочатку почніть з цифр від 0 до 1. Будь-які цифри поза цим діапазоном не містяться у наборі Кантора. Тепер поділимо числа на три рівні частини: [0,1 / 3], [1 / …

19
Скільки репутації має користувач пари? [зачинено]
Закрито . Це питання потребує деталей або ясності . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Додайте деталі та уточніть проблему, відредагувавши цю публікацію . Закрито 2 роки тому . Вступ Для тих, хто не знайомий з парою - або, принаймні, з цього особливості: Часто у профілях людей люди …

16
Я даю вам N-ту перестановку, ви даєте мені N
Введення: послідовність малих літер (ASCII [65; 90]), яка є N th * лексикографічною перестановкою мультисету її символів * перестановки нумеруються від 0 або 1 вгору Вихід: базове-10 ціле число N Рулез Можуть бути дублікати (ось чим ця проблема відрізняється від цієї ) Символи упорядковуються за їх значенням ASCII У випадку …

17
Випадкові пікселі
Ваше завдання просте: написати програму, яка замінить випадкові пікселі у чорному прямокутнику 16 пікселів * 8 пікселів (ширина по висоті) білим пікселем. Отвори повинні бути однаково випадковими, і ви повинні вивести зображення 16 пікселів на 8 пікселів із вставленими білими пікселями. Замініть лише 1 піксель на стовпець (16 замінених пікселів) …

13
Розмноження на блискавці
Вступ Давайте визначимо нову арифметичну операцію, яку я називаю множенням блискавки . Щоб блискавка помножила два невід’ємних цілих числа, ви додаєте провідні нулі, щоб зрівняти довжини, помножувати відповідні базові-10 цифр чисел, додавати провідні нулі до результатів, щоб отримати двоцифрові числа, об'єднати їх і, нарешті, скинути провідні нулі. Ось приклад з …

7
Пошук слів на цифрах
З огляду на ціле число від 1 до 999 включно, виведіть триєдне значення, якщо воно відображається горизонтально, вертикально або по діагоналі, вперед або назад, в будь-якому місці 3x3 квадрата цифр 1-9 на стандартній цифровій панелі : 789 456 123 Якщо число не відображається, виведіть помилкове значення. Точні 65 чисел, для …

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