571
\$\begingroup\$

This "sandbox" is a place where Code Golf users can get feedback on prospective challenges they wish to post to main. This is useful because writing a clear and fully specified challenge on your first try can be difficult, and there is a much better chance of your challenge being well received if you post it in the sandbox first.

Sandbox FAQ

Posting

To post to the sandbox, scroll to the bottom of this page and click "Answer This Question". Click "OK" when it asks if you really want to add another answer.

Write your challenge just as you would when actually posting it, though you can optionally add a title at the top. You may also add some notes about specific things you would like to clarify before posting it. Other users will help you improve your challenge by rating and discussing it.

When you think your challenge is ready for the public, go ahead and post it, and replace the post here with a link to the challenge and delete the sandbox post.

Discussion

The purpose of the sandbox is to give and receive feedback on posts. If you want to, feel free to give feedback to any posts you see here. Important things to comment about can include:

  • Parts of the challenge you found unclear
  • Comments addressing specific points mentioned in the proposal
  • Problems that could make the challenge uninteresting or unfit for the site

You don't need any qualifications to review sandbox posts. The target audience of most of these challenges is code golfers like you, so anything you find unclear will probably be unclear to others.

If you think one of your posts requires more feedback, but it's been ignored, you can ask for feedback in The Nineteenth Byte. It's not only allowed, but highly recommended! Be patient and try not to nag people though, you might have to ask multiple times.

It is recommended to leave your posts in the sandbox for at least several days, and until it receives upvotes and any feedback has been addressed.

Other

Search the sandbox / Browse your pending proposals

The sandbox works best if you sort posts by active.

To add an inline tag to a proposal, use shortcut link syntax with a prefix: [tag:king-of-the-hill]. To search for posts with a certain tag, include the name in quotes: "king-of-the-hill".

\$\endgroup\$
0

4629 Answers 4629

-3
\$\begingroup\$

Who Loses The number guessing game?

You are playing a number guessing game. You know everyone's guesses, and who won, and want to figure out who was in last place.

Task

Your task is to take a dictionary of guesses as input, along with the name of the winner. You should then return the name of the player whose guess was the farthest from the winner's, or if there are multiple, the lowest.

A input:

[{"Joe": 800, "Mama": 1000, "Biden": 1200}, "Joe"]

Means that the aproxximate score winner is Joe, The next is Mama, Mama is greater than Joe and Mama is greater than Biden.

So the loser is Biden.

All guesses are guaranteed to be unique

Test cases

[{"A": 100, "B": 200, "C": 300}, "A"] => "C"
[{"Hello": 200, "World": 201}, "World"] => "Hello"
[{"Blah": 210, "Bruh": 984, "Boo": 314}, "Boo"] => "Bruh"
[{"A": 6, "B": 7, "C": 666, "D": 1000}, "C"] => "A"
[{"AC": 100, "BE": 200, "CE": 300}, "B"] => "CE"

Meta

  • Any feedback?

  • Dupe?

\$\endgroup\$
1
  • \$\begingroup\$ What's the point of having this weird input format? Why not just take and return indices? \$\endgroup\$
    – ophact
    Jan 23, 2022 at 10:36
-3
\$\begingroup\$

Convert decimal to unary in fewest regex codes

Your task is to Convert decimal to undary in fewest regex codes

Every regex code is substitution mode.

The regex code counts the regex code, without test string and Substitution code

A example

^2, |11
^3, |111
^4, |1111
...
\|, <empty>

This scores infinity, But don't try this.

Rules

  • Your score is always non-infinity

  • Any flavor is allowed.

  • Your score is the number of regex codes

  • every length of regex code is non-infinite

Meta

  • Any feedback?
\$\endgroup\$
1
  • 2
    \$\begingroup\$ Can you add an explanation of what exactly a "regex code" is? \$\endgroup\$
    – AnttiP
    Jan 23, 2022 at 17:30
-3
\$\begingroup\$

Nth Eights Challenge

Inputs:

There are 2 inputs: The amount of eights to be used in the calculation, and the number to solve for.

What to solve:

The program needs to insert operators in between each eight, so when the newly created equation is calculated, the answer is the number that was trying to be solved for. When the equation is calculated, there is no operator priority.

Rules:

The only operators allowed are:

+
-
*
/
(And parentheses)

You may insert multiple operators between each number. No extra numbers are allowed. There must be an operator inserted in between each 8. The answer must be displayed when the program finishes.

Examples:

#User inputs
Amount of eights: 4
Solve for: 15

#Answer
8+8-8/8
#User inputs
Amount of eights: 4
Solve for: 10

#Answer
(8+8)/8+8

Winning Criteria:

The winning criteria is for the program written in the least amount of characters.

\$\endgroup\$
3
  • \$\begingroup\$ 0. What is winning criteria for this question? Code-golf or fastest code? 1. What operators are allowed? May I insert multiple operators between two 8s or may concatenation two 8s without any operator? 2. Is operator priority considered? 3. How fast should it be? Define by time usage on specified (batch of) testcases? Or defined by algorithm time complexity? 4. Language specified challenges are generally unwelcome on this site. \$\endgroup\$
    – tsh
    Jan 27, 2022 at 8:56
  • \$\begingroup\$ Related, related. \$\endgroup\$
    – Dingus
    Jan 29, 2022 at 1:35
  • \$\begingroup\$ Do you mean "characters" or "bytes"? \$\endgroup\$
    – ophact
    Jan 31, 2022 at 12:46
-3
\$\begingroup\$

Get the Nth line

Challenge

Let's have a file f and a number n. Your task is to get the nth line from the file.

Constrains

  • file f exists and has at least n lines
  • you can index lines from 0 or 1, whichever you prefer

Example

  • input: n = 2 (indexing from 1) and content of file f is:
foo
bar
baz
  • output: bar

Rules

\$\endgroup\$
2
  • 2
    \$\begingroup\$ I thought the entire point of this sandbox was to get feedback. Down-votes without any comment is the complete opposite. \$\endgroup\$
    – matusf
    Feb 18, 2022 at 15:28
  • 1
    \$\begingroup\$ I think the downvotes here are just because it's not a very interesting challenge. There are no comments because there's nothing actually wrong with your post, so no feedback to really give, but people just don't think it's interesting for code-golf. You could post it and I don't think it would get closed or anything, but it wouldn't get many upvotes. Thank you for using the sandbox nonetheless. \$\endgroup\$
    – pxeger
    Feb 19, 2022 at 9:35
-3
\$\begingroup\$

Knight mover

Your task is to move a chess knight between the points B and E.

A chess knight moves in an L shaped pattern, like so:

.X.X.
X...X
..B..
X...X
.X.X.

The Xs mark where the knight in position B can move.

There may be other chess pieces on the board, blocking the knight's movement, but for clarity, you will only be notified of where you cannot go by # characters. You cannot land on these marked spaces, but you can go over them. You also cannot go outside of the board.

Your goal is to find how many turns N are needed to go from B to E, or return -1 if it can't be done.

Input & Output

  • You are given 2 integers W and H giving the width and height of the board
  • For the next H lines, you are given a row of the board, containing the characters B, E, . and #
  • You are allowed to take in the input as a WxH board as a list of strings or a character matrix

Test case

3 2
..E
B..
->
1


5 5
B...E
..#..
.....
.....
.....
->
4


7 5
B..###.
####.##
...###E
..#.#.#
.#..#..
->
4


8 8
....#...
....##..
..E..#..
#...##..
.###....
........
........
.....B..
->
6

This is code-golf, so shortest code wins!

Credits to this puzzle

\$\endgroup\$
-3
\$\begingroup\$

Game of GO

Go is an abstract strategy board game for two players, in which the aim is to surround more territory than the opponent.

Given a board (where some stones are already added) and a list of moves to be executed next, check whether the moves are valid and (if they are valid) execute them.

After executing all moves in the list the expected output is either not valid if at least one of the moves is invalid, or the new state of the board after all moves were executed.

Rules of Go:

  • Two players place stones of their color (by turns)
  • If a stone is completely surrounded by stones of the other player (or by the edge of the field) this stone is beaten and is removed from the board
  • If stones of the same color are placed next to each other they build a group
  • If the group is completely surrounded by stones of the other player (or by the edge of the fields) this group is beaten and all of its stones are removed from the board
  • A stone can be placed on every free field on the board except for:

A position in which it would be completely surrounded by the stones of the other player (no suicidal moves allowed). Except this move beats some other stones which leads to it not being surrounded anymore

A position that would create the same board that was there before the other player made his move (to prevent an infinite loop of killing stones) which is named KO-rule (see a test case for an example)

  • Points (which are not important for this puzzle) are made by empty fields that are surrounded by the stones of a player or by enemy stones that are beaten

For a more detailed description please visit here

Input & Output

  • You are first given an integer S for the size of the field (the field is a square of S×S)
  • You are then given an integer M for the number of moves that are to be made on the board
  • You are then given a line of the board where . is an empty field, B is a field with a black stone and W is a field with a white stone on it (each line contains S characters) for the next S lines
  • You are then given a move that is described by the player color, and the position (separated by a space character)
  • Output the expected output, else output any character you want
  • You are allowed to output the board as a matrix/list
  • You may assume the initial board state in the input is always valid
  • You are allowed to take in the input as a list/array of lines and moves

Testcases

5
5
.....
.....
.....
.....
.....
B 2 2
W 2 3
B 3 2
W 3 4
B 4 3
->
.....
.....
..BW.
..B.W
...B.


5
7
BB...
B....
.....
...W.
.....
B 3 2
W 0 2
B 3 4
W 2 0
B 2 3
W 1 1
B 4 3
->
..W..
.W...
W..B.
..B.B
...B.


5
1
.....
.....
..B..
.....
.....
B 2 2
->
0


5
5
.BW..
BW...
.W...
.....
.....
B 3 4
W 4 4
B 3 3
W 2 0
B 0 0
->
0


5
3
..B..
.B.B.
.WBW.
.BW..
.....
B 3 3
W 1 2
B 2 2
->
0


5
7
.B...
BW...
WB..W
...W.
...BW
B 3 4
W 0 2
B 0 3
W 0 0
B 1 2
W 0 1
B 1 0
->
...B.
B.B..
WB..W
...WB
...B.

This is code-golf, so shortest code wins!

Credits to this puzzle

\$\endgroup\$
-3
\$\begingroup\$

Beaker drawing

Your task is to output the following beaker with the volume n:

_
 %      %
%       %
%       %
%       %
%       %
%%%%%%%%%

You are the fill n spaces of the beaker above, so n=5 looks like this

_
 %      %
%       %
%       %
%       %
%-----  %
%%%%%%%%%

Even though this defies the law of physics, you are to output the beaker with the liquid of n volume. The volume of the beaker is 35. The first 4 layers have a volume of 7 and the top has a layer of 6, and the _ represents an additional volume of 1 if the beaker overspills.

Test cases

34
->
_
 %------%
%-------%
%-------%
%-------%
%-------%
%%%%%%%%%

35
->
-
 %------%
%-------%
%-------%
%-------%
%-------%
%%%%%%%%%
(Note the `_` becomes a `-`)

15
->
_
 %      %
%       %
%-      %
%-------%
%-------%
%%%%%%%%%

You may assume n is positive (can be 0)

You may assume the beaker can overspill

You may perform the "flood fill" from left to right bottom to top or right to left bottom to top.

This is code-golf, so shortest code wins!

\$\endgroup\$
-3
\$\begingroup\$

Play an audio file

Challenge

Your challenge is simple: play an audio file at a given path. Your program will take the file path as input and will play it once and quit.

To make this harder, however, you are not allowed to use external libraries, but modules that are part of your language's standard library (such as ctypes below) are allowed.

Rules

  • Standard loopholes are forbidden.
  • You may assume (a) specific operating system(s) and/or (a) specific file format(s).
  • You may assume an absolute path.
  • You do not have to hear the sound every time; you are not expected to unmute muted speakers, and you can play through whichever audio device is the most convenient. However, it must be possible to hear it every time you run it with certain settings. A window such as Control Panel -> Sound -> Playback on Windows must always be able to "show" the sound being played under at least one audio device. You are allowed to play the file under a different device each run.
  • Your program must be able to play at least one of the audio file formats listed on Wikipedia. Other formats are allowed, as long as one of the formats listed there is supported.
  • Outputting any content to any stream, file, etc. is allowed, but the sound must be played.
  • Please explain your answer. This is not necessary, but it makes it easier for others to understand.
  • Languages newer than the question are allowed. This means you could create your own language where it would be trivial to do this, but don't expect any upvotes.
  • This is , so shortest code in bytes wins!

Reference implementaion (ungolfed, Python 3, Windows only, .wav only)

# -*- coding: utf_8 -*-

from ctypes import windll

winmm = windll.winmm
audio_file = input('Audio file path: ').encode('utf_8')

winmm.PlaySound(audio_file, 0, 131072)

Golfed reference implementation

import ctypes;ctypes.windll.winmm.PlaySoundW(input(),0,131072)
\$\endgroup\$
6
  • \$\begingroup\$ "To make this harder, however, you are not allowed to use external libraries."...and then you use a library in the reference implementation? \$\endgroup\$ Feb 25, 2022 at 19:29
  • \$\begingroup\$ Does "external libraries" mean libraries not coming with the standard library of the language of choice, or all libraries for that language? \$\endgroup\$
    – Ginger
    Feb 25, 2022 at 19:34
  • \$\begingroup\$ I said external libraries, not libraries in general. ctypes is built-in, so it's not an external library. \$\endgroup\$
    – Makonede
    Feb 25, 2022 at 19:35
  • \$\begingroup\$ @Makonede But winmm is not built-in. \$\endgroup\$
    – wizzwizz4
    Feb 26, 2022 at 0:51
  • \$\begingroup\$ @wizzwizz4 It is in Windows. \$\endgroup\$
    – Makonede
    Feb 26, 2022 at 1:20
  • \$\begingroup\$ @Makonede “External libraries” is unclear, then. External to what? Can I make raw calls to the hardware interface, and say that those particular drivers are part of my operating system and so not external? etc, etc.. We already have rules and conventions about all of this; trying to forbid “external libraries” won't make it more fun. \$\endgroup\$
    – wizzwizz4
    Feb 26, 2022 at 1:28
-3
\$\begingroup\$

Visualize tag progress

Task is pretty simple. Given non-negative positive integers 0 ≤ s ≤ 1000 and 0 ≤ a ≤ 200, your code should draw following progress bars.

Examples

When s ≤ 100 or a ≤ 20:

Input:15 12
Output: 
15/100 score
++++++------------------------------------
12/20 answers
+++++++++++++++++++++++++-----------------

Input:3 1
Output: 
3/100 score
+-----------------------------------------
1/20 answers
------------------------------------------
  
Input:85 35
Output: 
85/100 score
+++++++++++++++++++++++++++++++++++-------
35/20 answers
++++++++++++++++++++++++++++++++++++++++++

When (s > 100 and a > 20) and (s ≤ 400 or a ≤ 80):

Input:156 43
Output: 
156/400 score
++++++++++++++++--------------------------
43/80 answers
++++++++++++++++++++++--------------------
  
Input:666 66
Output: 
666/400 score
++++++++++++++++++++++++++++++++++++++++++
66/80 answers
++++++++++++++++++++++++++++++++++--------

When (s > 400 and a > 80) and (s ≤ 1000 and a ≤ 200):

Input:999 85
Output: 
999/1000 score
+++++++++++++++++++++++++++++++++++++++++-
85/200 answers
+++++++++++++++++-------------------------

Input:666 194
Output: 
666/1000 score
+++++++++++++++++++++++++++---------------
194/200 answers
++++++++++++++++++++++++++++++++++++++++--

The number of +'s in each bar is equal to the value of a or s divided by its max value (max values for s are 100, 400, 1000 and for a are 20, 80, 100, the choice of max values ​​depends on the ranges in which the values ​​of a and s fall.), multiplied by 42 and rounded down. This number cannot be more than 42.
The number of -'s is equal to 42 minus the number of +'s.

End etc. Trailing spaces are allowed. Additional newlines are not allowed.

This is a code-golf challenge so the shortest solution wins.

Meta

I realized that I myself got confused in my task :) ... so this task will be in completion until this text is deleted.

\$\endgroup\$
3
  • \$\begingroup\$ "progress bars are built according to the same rules" - what are those rules? Please describe them, so that we don't need to infer them from examples. \$\endgroup\$
    – pajonk
    Mar 2, 2022 at 7:14
  • \$\begingroup\$ Why should we have to "output nothing" when s>1000 and a>100? The challenge would, in my opinion, be much better if we were allowed to assume that s<=1000 and a<=100. \$\endgroup\$
    – ophact
    Mar 2, 2022 at 9:12
  • \$\begingroup\$ Please, describe the rules governing drawing the bars. Also, "s = 666 and a = 66" appears twice with two different outputs. \$\endgroup\$
    – pajonk
    Mar 3, 2022 at 7:32
-3
\$\begingroup\$

Your task is to create an approximation for sin(x) in the fewest characters possible.

  • Given the approximation s(x), it must satisfy 0.95 * sin(x) <= s(x) <= 1.05 * sin(x)

The entry with the fewest characters wins.

\$\endgroup\$
1
  • 1
    \$\begingroup\$ Most languages already have a built-in for the sine function, so I think this would not be an interesting challenge at all. Also, FYI, code-golf challenges (if that is what you are going for) usually score submissions by byte count, not character count. \$\endgroup\$
    – Aiden Chow
    Mar 15, 2022 at 23:01
-3
\$\begingroup\$

Longest Possible Pythagorean Triple Triangle

A Pythagorean triple is a set of 3 integers \$\{a, b, c\}\$ where \$a^2 + b^2 = c^2\$. Your task is to, given an integer \$n\$ where \$3 ≤ n ≤ 15\$, output a Pythagorean triple using these rules:

  • If \$n\$ is odd, output \$\{n, \frac{n^2-1}{2}, \frac{n^2+1}{2}\}\$.
  • If \$n\$ is even, output \$\{n, \frac{n^2}{4}-1, \frac{n^2}{4}+1\}\$.

With these rules, the difference between the lengths of the longest leg and the hypotenuse is minimized.

Rules

Test cases

Input | Output
------+-------
3     | 3 4 5
4     | 4 3 5
5     | 5 12 13
6     | 6 8 10
7     | 7 24 25
8     | 8 15 17
9     | 9 40 41
10    | 10 24 26
11    | 11 60 61
12    | 12 35 37
13    | 13 84 85
14    | 14 48 50
15    | 15 112 113

See A055523 and A055524.

\$\endgroup\$
-3
\$\begingroup\$

Repeat Hello World according to another string's length

\$\endgroup\$
5
  • \$\begingroup\$ I think arbitrarily overriding the scoring defaults is not very well received... \$\endgroup\$
    – Seggan
    Jul 25, 2022 at 18:14
  • \$\begingroup\$ Which part? The "This is code-golf, so shortest answer wins!"? I've seen it in many questions, so I thought I would have to add it here. Is there a problem with it, or were you talking about something else in the question? \$\endgroup\$ Jul 26, 2022 at 5:37
  • 2
    \$\begingroup\$ "Please write how many bytes it is in UTF-8". A lot of languages have ther own scoring systems \$\endgroup\$
    – Seggan
    Jul 26, 2022 at 14:57
  • \$\begingroup\$ So what you are suggesting is to remove the UTF-8 option? \$\endgroup\$ Jul 29, 2022 at 9:53
  • \$\begingroup\$ Alright then. I've added it. \$\endgroup\$ Jul 29, 2022 at 9:56
-3
\$\begingroup\$

Do you trust this site?

title is a work in progress

This challenge is simple. Your program must take a URL (which will always exist) as input, download the file, and execute its contents as a program in the language your answer is in. The file will always be a valid program in your language.

Example

Language: Python
Input: https://gist.githubusercontent.com/GingerIndustries/d6f25007b45071e901b2b9057388d8f8/raw/25f838879fdc93f07394afc080eeef0993f55cbe/helloworld.py
Result: Program should print "Hello World!"
\$\endgroup\$
3
  • \$\begingroup\$ It'd probably benefit from more test cases; and how is it guaranteed that the webpage is a file? \$\endgroup\$ Oct 12, 2022 at 12:17
  • 1
    \$\begingroup\$ @py3programmer All webpages are files. \$\endgroup\$
    – Ginger
    Oct 12, 2022 at 15:25
  • \$\begingroup\$ As in, the URLs will have an extension in the end? \$\endgroup\$ Oct 12, 2022 at 16:33
-3
\$\begingroup\$

This is a famous mathematical problem, Named as Bridges of Königsberg

Task

The bridges of Königsberg is a problem in mathematics which states that the path required for crossing each bridge exactly once without using a boat

Bridges of https://cdn.britannica.com/77/74877-050-F5DD4C34/Leonhard-Euler-route-each-question-bridges-Swiss.jpg

You have to find out if there is any path which uses each bridges exactly once without using a boat, if the time exceeds 36000 seconds or 10 hours the program should print no path found yet

Rules

Standard rules of fastest-code

Expected Output: Paths possible: [7, 2, 3, 1, 5, 6, 4], [2, 1, 7, 3, 4, 6, 5], etc.

This is fastest-code so the answer with shortest time is accepted, Even if the code will take a many days without a Quantum Computer

\$\endgroup\$
7
  • 1
    \$\begingroup\$ I'm really confused by the "programing languages starting from b" rule. What does it even mean? And what a extremely arbitrary restriction \$\endgroup\$
    – mousetail
    Nov 29, 2022 at 14:55
  • \$\begingroup\$ Thanks, @mousetail I mean unofficial languages which is not included in the Wikipedia Article \$\endgroup\$
    – user115781
    Nov 29, 2022 at 14:59
  • 1
    \$\begingroup\$ What does it mean for a language to be unofficial? See codegolf.meta.stackexchange.com/a/8058/91213 our guidelines for arbitrary restricting languages. \$\endgroup\$
    – mousetail
    Nov 29, 2022 at 15:02
  • \$\begingroup\$ Thanks @mousetail, For the guidelines link \$\endgroup\$
    – user115781
    Nov 29, 2022 at 15:26
  • \$\begingroup\$ This question isn't very specific. What exactly are we supposed to do? \$\endgroup\$
    – Ginger
    Nov 29, 2022 at 18:09
  • \$\begingroup\$ Thanks, @Ginger, You have to find out if there is any path which uses each bridges exactly once without using a boat, if the time exceeds 36000 seconds or 10 hours the program should print no path found yet \$\endgroup\$
    – user115781
    Nov 30, 2022 at 6:44
  • \$\begingroup\$ What is input and what is output? Without input, how can you prevent someone write a program which simply print "[7, 2, 3, 1, 5, 6, 4]"? \$\endgroup\$
    – tsh
    Dec 15, 2022 at 7:21
-3
\$\begingroup\$

Take one of two distinct, consistent values of your choice. For one input, check if the input is prime. For another input, check if the input is a square.

Standard loophole apply except input complete or partial functions, which is replaced with

No input results in an infinite loop.

\$\endgroup\$
3
  • \$\begingroup\$ This challenge is pretty easy to solve in most languages, many have builtins for both parts \$\endgroup\$
    – noodle man
    Jan 19, 2023 at 23:52
  • \$\begingroup\$ Why it get -3 vote and don't turn grey? \$\endgroup\$
    – l4m2
    Jan 20, 2023 at 7:16
  • \$\begingroup\$ ok b/c grey is loaded earlier, and it later get vote \$\endgroup\$
    – l4m2
    Jan 20, 2023 at 7:18
-3
\$\begingroup\$

Munge my Text

Inspired by this example in the Python documentation.

Write a program that takes as input a string of arbitrary length and returns a version of that string with every letter, except the first and last, of every word randomly shuffled. "Word" is defined here as a contiguous set of alphabetical characters separated by one or more spaces or punctuation marks (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~).

Examples

Input: Professor Abdolmalek, please report your absences promptly.
Possible output: Poefsrosr Aealmlobdk, pslaee reorpt your abnseces plmrptoy.

META TODO: Add more examples

This is , so shortest answer wins!

\$\endgroup\$
1
  • 1
    \$\begingroup\$ dupe \$\endgroup\$
    – emanresu A
    Feb 16, 2023 at 22:58
-3
\$\begingroup\$

Fibonacci before the zero - Dublicate of Negative Fibonacci Numbers

\$\endgroup\$
2
  • 3
    \$\begingroup\$ very closely related \$\endgroup\$
    – math scat
    Feb 18, 2023 at 15:25
  • 1
    \$\begingroup\$ I would consider this a duplicate of the challenge @mathcat linked to. Although your version just says to output 50, this is basically just overwriting the default sequence rules \$\endgroup\$
    – noodle man
    Feb 18, 2023 at 15:48
-3
\$\begingroup\$

See Those Sorts

Using shapes or Unicode, show how some array of numbers is sorted with a particular sorting method. You should include selection sort, merge sort, bubble sort, quick sort, bogo sort, and at least one other sort you find interesting (maybe try one of these).

Make sure that the speed of the sort corresponds to the actual performance on your computer. You can try adding a constant multiplier to the speed if you want.

Someone watched sort videos :)

\$\endgroup\$
1
  • \$\begingroup\$ Please note that popularity-contest challenges are not so well received any more. Read more here \$\endgroup\$
    – The Thonnu
    Mar 3, 2023 at 18:21
-3
\$\begingroup\$

\$n\$ bottles of beer!

You want to recreate the song "99 Bottles of Beer", but you don't have 99 bottles!


Given an input non-negative integer \$n\$, output the lyrics to the song "99 Bottles of Beer" but starting from \$n\$ instead. For a few examples:

Input: 10

Output: 

10 bottles of beer on the wall,
10 bottles of beer.
Take one down, pass it around,
9 bottles of beer on the wall.

9 bottles of beer on the wall,
9 bottles of beer.
Take one down, pass it around,
8 bottles of beer on the wall.

8 bottles of beer on the wall,
8 bottles of beer.
Take one down, pass it around,
7 bottles of beer on the wall.

7 bottles of beer on the wall,
7 bottles of beer.
Take one down, pass it around,
6 bottles of beer on the wall.

6 bottles of beer on the wall,
6 bottles of beer.
Take one down, pass it around,
5 bottles of beer on the wall.

5 bottles of beer on the wall,
5 bottles of beer.
Take one down, pass it around,
4 bottles of beer on the wall.

4 bottles of beer on the wall,
4 bottles of beer.
Take one down, pass it around,
3 bottles of beer on the wall.

3 bottles of beer on the wall,
3 bottles of beer.
Take one down, pass it around,
2 bottles of beer on the wall.

2 bottles of beer on the wall,
2 bottles of beer.
Take one down, pass it around,
1 bottle of beer on the wall.

1 bottle of beer on the wall,
1 bottle of beer.
Take one down, pass it around,
0 bottles of beer on the wall.
Input: 1

Output:

1 bottle of beer on the wall,
1 bottle of beer.
Take one down, pass it around,
0 bottles of beer on the wall.

This is , so shortest answer wins!



Meta:

  • Any more tags?
  • Is this a duplicate?
  • Is the song formatted correctly in the example?
  • Any more test cases?
\$\endgroup\$
3
  • \$\begingroup\$ I think the “{n} bottles of beer on the wall. {n} bottles of beer.” should be “{n} bottles of beer on the wall, {n} bottles of beer.” with a comma. At the end of the song, it’s supposed to go “1 bottle of beer on the wall, one bottle of beer. Go to the store and buy some more, {n} bottles of beer on the wall.” Also, what is the expected output for n=1 ? \$\endgroup\$
    – noodle man
    Jul 13, 2023 at 12:49
  • \$\begingroup\$ @noodleman fixed. In the original version, I don't think you go to the store for more. \$\endgroup\$ Jul 13, 2023 at 15:03
  • \$\begingroup\$ Wikipedia cites several variations of the final lyric, but that’s how I’ve always sung it. Consider choosing one of those variations. (p.s. this challenge pretty trivial and is likely to be marked as a dupe of the regular 99 bottles of beer question, though I’m not one of the downvoters) \$\endgroup\$
    – noodle man
    Jul 13, 2023 at 17:15
-3
\$\begingroup\$

Square decomposition

Inspired by silly ideas for answers to this CMC.


Given a perfect square, take the square root of it. NO NO NO NOT THAT CHALLENGE


Explanation

Given a square in Unicode art, output the characters that compose the square.

Rows are separated by newlines, so they cannot appear in the square. Therefore, contrary to I/O defaults, you cannot output leading or trailing whitespace unless it is in the square. You may also output in any order. Remember, this is , so shortest code wins!

Test cases

Input Unordered Output
aaa
aaa
aaa
a
1234
4567
7890
0123
1234567890
"
"
🟥🟨🟩
🟩🟥🟨
🟨🟩🟥
🟥🟨🟩




Meta

  • Is this a duplicate?
  • Is this clear enough?
  • Should I add more test cases?
  • Should I add or remove any tags?
  • Anything else?
\$\endgroup\$
9
  • \$\begingroup\$ So it's just printing the unique characters in a string? \$\endgroup\$
    – mousetail
    Aug 26, 2023 at 18:46
  • \$\begingroup\$ @mousetail No, you must not print newlines. It is printing the unique elements that make up the square. \$\endgroup\$ Aug 26, 2023 at 18:49
  • 1
    \$\begingroup\$ Yea so extremely trivial and not related to the title at all. Try to title your challenges what they actually are \$\endgroup\$
    – mousetail
    Aug 26, 2023 at 18:54
  • \$\begingroup\$ @mousetail Square decomposition is not finding what makes a square!?! \$\endgroup\$ Aug 27, 2023 at 7:59
  • \$\begingroup\$ Not at all, it's just removing duplicate items from a string \$\endgroup\$
    – mousetail
    Aug 27, 2023 at 8:16
  • \$\begingroup\$ @mousetail which happen to be part of the square. Also, newlines may be part of the string, but you may not print them. \$\endgroup\$ Aug 27, 2023 at 8:27
  • \$\begingroup\$ That doesn't make any difference for the challenge \$\endgroup\$
    – mousetail
    Aug 27, 2023 at 8:31
  • \$\begingroup\$ while it is a funny idea and i do appreciate the title, it is a bit too trivial to have as a challenge, as currently posed. I think this could be improved if you actually had to find the exact string that was made to wrap to a square, like for example, abcb made into a 5x5 square becomes abcba\nbcbab\ncbabc\nbabcb\nabcba, and you have to somehow reverse that, maybe find the minimal string which could be turned into a square like that. Still might be seen as trivial to some but idk thats my suggestion :o \$\endgroup\$ Aug 28, 2023 at 1:59
  • \$\begingroup\$ @thejonymyster that would be a separate challenge. \$\endgroup\$ Aug 28, 2023 at 8:13
-3
\$\begingroup\$

Write an optimal Python program for distributed worknode to find prime.

Prime is defined as a number with no divisor but 1 and itself. Write an optimised for speed program for Pythons distributed worknode to check if an input is a prime.

The usual approach is to try possible divisors to see if they are, an optimisation begins at 2 (since we have to find n/2 anyway for a limit) and does not try multiples of a possible divisor, if a number does not divide by two then no even numbers divide that number, similarly if a number does not divide by three then it does not divide by three, six and nine. No number higher than n/2 need to be tried.

Entries in programming languages other than Python are acceptable for study.

\$\endgroup\$
6
  • \$\begingroup\$ Is 1 considered prime? \$\endgroup\$ Dec 28, 2023 at 23:21
  • \$\begingroup\$ @AlanBagel 1 is self prime. \$\endgroup\$
    – Willtech
    Dec 29, 2023 at 14:25
  • \$\begingroup\$ twitter.com/Willtech101/status/… \$\endgroup\$
    – Willtech
    Dec 29, 2023 at 14:27
  • \$\begingroup\$ ? (filler filler) \$\endgroup\$ Dec 29, 2023 at 14:31
  • \$\begingroup\$ Not popular? Probably there is already a real world solution I will work on it here github.com/Willtech/Prime \$\endgroup\$
    – Willtech
    Dec 31, 2023 at 5:25
  • \$\begingroup\$ @AlanBagel Actually I was looking even -3 is considered prime and 2. \$\endgroup\$
    – Willtech
    Dec 31, 2023 at 5:27
-4
\$\begingroup\$

Output the number of lines of your code

Your task is to write a program that counts the number of its lines of code and outputs them.

Specs:

  • The number mustn't be hardcoded into the program, nor in any other external resource;

  • Internet access is forbidden;

  • Your program's output must be the number of lines only;

  • Your program should not use any tool, macro, function, or similar device designed with the specific purpose of counting lines.

\$\endgroup\$
9
  • 2
    \$\begingroup\$ I don't see much of a challenge here. wc -l $0? \$\endgroup\$
    – ugoren
    Feb 23, 2014 at 17:15
  • 1
    \$\begingroup\$ It can be a nice question, but needs some work. Just add something like "it should not use any tool, macro, function, or similar device designed with the specific purpose of counting lines". \$\endgroup\$ Feb 24, 2014 at 2:10
  • \$\begingroup\$ @Victor Nice point, added. Thank you :) \$\endgroup\$
    – Vereos
    Feb 24, 2014 at 10:10
  • 4
    \$\begingroup\$ As long as you can read the program file, it's no challenge. E.g. print len(l for l in sys.argv[0]). But if you forbid reading the source, and forbid hard-coding the length, what's left? \$\endgroup\$
    – ugoren
    Feb 24, 2014 at 14:00
  • \$\begingroup\$ @ugoren I don't see where it says it can't read its source. \$\endgroup\$
    – user10766
    Feb 27, 2014 at 22:13
  • 1
    \$\begingroup\$ @user2509848, It doesn't. This is why the question is easy and uninteresting. \$\endgroup\$
    – ugoren
    Feb 28, 2014 at 5:56
  • \$\begingroup\$ @ugoren If you can't though, how will you tell, hardcode it? \$\endgroup\$
    – user10766
    Feb 28, 2014 at 5:57
  • 1
    \$\begingroup\$ @user2509848, Either way, not a good question. \$\endgroup\$
    – ugoren
    Feb 28, 2014 at 6:25
  • 2
    \$\begingroup\$ This is one byte in any golfing language with implicit output: 1 \$\endgroup\$
    – Nic
    May 9, 2016 at 20:11
-4
\$\begingroup\$

Here is my first attempt at a cops and robbers post (which is why I'm using the sandbox).


Cops - Golfed recursion

You must select a language that satisfies the following criteria:

  • Functions - It must be possible to create a function with any number of integer input values and a single integer output (or return) value. The function may also be a complete program in itself. (Your language may not call it a function, but that is ok)
  • Arithmetic operations - The integer operations +-*/% should all be possible, either in a simple or a complicated manner.
  • Data - You should be able to store one-byte or two-byte long integers (either signed or unsigned will do). You may do this also in an indirect manner.
  • Iteration - You must be able to create a loop that will keep running until a condition is satisfied. Therefore < > = <= >= ! & | should also be supported, either directly or indirectly.
  • Recursion - You should be able to call a function from within the function itself with a set of input values calculated by the main function.
  • Declaration - You should be able to declare new integer variables as needed from within the function.

Task

You need to create a recursive function. Code will be scored by the number of characters in it, the shorter the better. A solved code cannot win the challenge. A post with less than 5 up-votes cannot win the challenge. There will be no overall winner, but a separate winner for each language.

Robbers - Golfed recursion

Your objective is to pick up a cop's post, and write a function in the same language but it should not use any recursion (can use iteration). The function may create any number of variables, loops, etc. but should be able to achieve the exact same end result (atleast, in theory) as the cop's one.

Your score will be the same as the cop's post's score at the time it was solved. His/her post is now invalid, and you get his/her score

\$\endgroup\$
2
  • 2
    \$\begingroup\$ I don't understand how a cop can write an answer that isn't going to be cracked, unless the language of choice can only loop via recursion (which I think you're trying to rule out by requiring that "iteration" must be possible). Also, requiring 5 votes to be a winner is only encouraging tactical voting. Answers that are actually invalid will likely get downvoted and deleted anyway. \$\endgroup\$ Feb 10, 2016 at 12:36
  • \$\begingroup\$ @MartinBüttner Maybe in some languages it is possible by exploiting both closure and recursion, but I mainly agree with your point: recursion and iteration are two ways to do the same thing. \$\endgroup\$
    – Katenkyo
    Feb 10, 2016 at 12:41
-4
\$\begingroup\$

Your task is to create a program that outputs a random pizza recipe following this one rule:

No random number choosers, you may have random text choosers. All standard code-golf rules apply. A sample output:

A simple PEPPARONI pizza sprinkled with fish and sausages. Your program must have the following items:

  • Anchovies
  • Fish
  • An adjective for the pizza

The program written with the shortest code wins.

Winner

The winner shall be picked on April 3rd, 12AM on the time zone GMT+3.

\$\endgroup\$
3
  • \$\begingroup\$ I already had an answer to the question, albeit non-competing: Python3 print("Have a plain MARGHERITA without any",["fish.","anchovies."][len(input("What's your favourite pizza? "))%2]) \$\endgroup\$
    – mIllIbyte
    Mar 31, 2016 at 12:41
  • 5
    \$\begingroup\$ Uh, this has a lot of problems with clarity. First, all "random text choosers" are implemented with "random number choosers" which makes this restriction feel a bit bizarre. Second, what counts as an adjective for pizza? And since this is code golf, people will always pick the shortest available. And third, what should an output look like? It's not clear from the spec. Also, sort of unrelated, but usually putting a time limit is unnecessary, even extremely popular challenges stop getting responses with any frequency after a month or so. \$\endgroup\$ Mar 31, 2016 at 12:59
  • \$\begingroup\$ Did you misspell it on purpose? \$\endgroup\$ Mar 31, 2016 at 13:55
-4
\$\begingroup\$

What about one question on numeric solve?

Write one function that gets as one argument one function f(x), and one interval a..b and return the list of all element v such f(v)=0 in the interval a..b. In the interval a..b the f must be definite and can not be f(r) = +oo for r in a..b.

Win the one write the function with biggest set of right results. If two have the same set, win the one has less characters. You can not use solve() or nsolve() or fsolve() or one already written function that your sys offer that finds numerical x in f(x)=0

\$\endgroup\$
4
  • 2
    \$\begingroup\$ Finding all zeros of an arbitrary function is impossible unless the domain is restricted. \$\endgroup\$
    – user45941
    Nov 29, 2016 at 8:59
  • \$\begingroup\$ Ok you are right \$\endgroup\$
    – user58988
    Nov 30, 2016 at 10:04
  • 3
    \$\begingroup\$ The edit doesn't do anything to fix the problem. \$\endgroup\$ Nov 30, 2016 at 14:48
  • 3
    \$\begingroup\$ The bigger problem is that this post is incomprehensible. \$\endgroup\$
    – user45941
    Dec 2, 2016 at 8:54
-4
\$\begingroup\$

Beep. Boop. Maggot?

  1. Read input from STDIN until enter is pressed.
  2. If the input is "Beep", continue.
  3. Otherwise, print "Wrong!" and exit.
  4. Repeat steps one to three with "Boop" instead.
  5. Execute step one.
  6. If the input is "Maggot", output "Done".
    • Otherwise, output "Wrong.".

Remove punctuation (?.!'"), ignore capitalization (a-zA-Z only), and strip whitespace (\t and )

Notes: You must print the text word-for-word, character-for-character. Step 3 is Wrong!, while Step 6 is Wrong.

Hints

  • Notice how boop is just beep with the o's turned into e's.
  • There is lots of repetition here, but with many caveats.
\$\endgroup\$
1
  • \$\begingroup\$ Technically speaking, step 4 should repeat steps 1-3, shouldn't it? Anyway, apart from that, I don't see anything technically wrong with the challenge, but I'm not sure it's a very good challenge. \$\endgroup\$
    – user62131
    Jan 1, 2017 at 0:07
-4
\$\begingroup\$

Score Your Language

I believe that each language has a score. The way you find the score of a language is shown in the ungolfed Python program below

def scorer(lang):

    num = 0

    for i in str(lang):
        num += ord(i)

    return num

Basically the score is the total of the unicode values of the language name.

Now this seemed like a fairly trivial challange, so I thought I'd make it a bit more difficult. You aren't allowed to use your language name (case-sensitive) in the code. So this code in C++ would be invalid as I've used C++ in the code.

#include <iostream>

int main() {

    int total = 0;
    std::string s("C++");

    for (char & c : s) {
        total = total + (int)c;
        c = '*';
    }

    std::cout << total;

}

Although this does output the required number (153) it is still invalid.

Rules

  • You aren't allowed to use the language name but are allowed to use it in a different case. E.g. Java isn't allowed but java is.
  • This is a code-golf so shortest answer in bytes wins
  • You are allowed to use hex/octal codes in strings e.g \150 can be used instead of h
  • Your program must take no input or function arguments
  • You cannot simply output the score. Theoretically the program should work for any language name when changed.
  • Languages where the only valid syntax is the name, such as Chicken are allowed to use said name.
  • Version shouldn't be included so Python is always Python not Python 2 or 3
  • The score is the value of the case-sensitive name

Correct Scores

Language              Score

ArnoldC                675
brainfuck              949
C                       67
C++                    153
Java                   386
Lua                    290
Mornington Crescent   1922
Python                 642
TrumpScript           1165
Vim                    300

Sandbox Questions

1) Why has this been downvoted?

2) I am thinking about putting a reputation limitation so that bosses like Dennis and Martin Büttner can't take answers from people who aren't as accomplished. Is this unfair? Should I not?

3) Is this a duplicate? I couldn't believe it wasn't already taken.

\$\endgroup\$
4
  • 4
    \$\begingroup\$ Terms like "you cannot use your language name" and "it must be calculated by the program" are not only unclear but will likely not be able to be made rigorous. \$\endgroup\$
    – Wheat Wizard Mod
    Feb 5, 2017 at 14:58
  • \$\begingroup\$ Are you suggesting that I remove those rules? \$\endgroup\$
    – user63571
    Feb 5, 2017 at 15:00
  • \$\begingroup\$ I don't think that the challenge is very interesting without the rules, but I don't think it is clear with them. I would suggest reworking the rules in some manner but exactly how I do not know. \$\endgroup\$
    – Wheat Wizard Mod
    Feb 5, 2017 at 15:01
  • \$\begingroup\$ 1. I would guess that it's mainly because it fails some of the tests in Things to avoid when writing challenges (X without Y, asking for different things in different languages, unnecessary fluff, explicitly disadvantaging certain languages, arguably one or two more), although it might also in part be because some people oppose trivial "challenges", and in part because the problems WW mentioned can't be fixed. 2. Very bad idea. 3. It's a multi-dupe: it combines two trivial tasks, each of which independently would clearly be a duplicate. \$\endgroup\$ Feb 6, 2017 at 9:15
-4
\$\begingroup\$

Popularly print the input

Goal

Write a program or function in a language of your choice that takes input and outputs that exact input.

Specifications

  • Your program/function should output the exact input in any reasonable way.
  • Your program does not have to end after printing the input. It may end up in an infinite loop if you wish, as long as that loop doesn't output any extraneous characters.

Winner

The winning answer will be the one that has the highest score. Voters should look for answers that use an unique way to print the input, have a special source code or use neat language features.

\$\endgroup\$
6
  • \$\begingroup\$ Plain "do X in a creative way" popularity contests have fallen out of favour and will likely immediately get closed as being too broad or not having an objective winning criterion. \$\endgroup\$ Apr 4, 2017 at 18:33
  • \$\begingroup\$ @MartinEnder: Yeah, I noticed. How do you think I should change the challenge so that it won't be closed? \$\endgroup\$
    – Luke
    Apr 4, 2017 at 18:35
  • 1
    \$\begingroup\$ Can't really help you there. If I knew of a good way to make popularity contests work, I'd write some myself. ;) \$\endgroup\$ Apr 4, 2017 at 18:39
  • \$\begingroup\$ Probably a duplicate of codegolf.stackexchange.com/q/62230/34718 \$\endgroup\$
    – mbomb007
    Apr 4, 2017 at 18:43
  • \$\begingroup\$ @mbomb007: No, this is not a code-golf challenge. \$\endgroup\$
    – Luke
    Apr 4, 2017 at 18:54
  • \$\begingroup\$ But there's nothing separating the answers this might receive. Please read this: codegolf.stackexchange.com/tags/popularity-contest/info \$\endgroup\$
    – mbomb007
    Apr 4, 2017 at 18:57
-4
\$\begingroup\$

Make a Login Screen

Challenge: make code that asks the user to enter a username and password. The username and password should be hard coded, but they must not be visible: you cannot have the entire username or the entire password in plain text in the code. Both the username and the password must be 8 characters long. Upon the incorrect username or password, some error should be displayed. It would be good if there are multiple "accounts" that would display different text on login. The password field should not be visible (Only asterisks or something).

This is Code-Golf, Shortest answer wins.

Standard loopholes are forbidden.

\$\endgroup\$
4
  • \$\begingroup\$ you can't say that answer doing something "would be good" if the shortest answer wins \$\endgroup\$ Apr 18, 2017 at 7:05
  • \$\begingroup\$ underhanded challenges are off-topic. \$\endgroup\$ Apr 18, 2017 at 8:36
  • \$\begingroup\$ It's not underhanded. \$\endgroup\$ Apr 18, 2017 at 14:15
  • \$\begingroup\$ I'm sure this might be a dupe of an obfuscation challenge \$\endgroup\$
    – Beta Decay
    Apr 18, 2017 at 23:36
-4
\$\begingroup\$

Of numbers of letters

there is something special the number 4. When spelled in English the word 'four' uses exactly 4 letters. I wonder whether there are further such numbers Your task is to identify whether there exist further such numbers and output them in any human readable format. To make this more of a challenge you can do the task in any regional Language of your choice (Say Russian or Portuguese or Spanish or Mandarin or Hindi etc.).

The Best entry will be selected by the most number of such numbers regardless of language used

Best of Luck

\$\endgroup\$
2

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .