460
\$\begingroup\$

What is the Sandbox?

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

To post to the Sandbox, scroll to the bottom of this page or click on the "Add Proposal" link below, 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. 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, replace the post here with a link to the challenge and delete it.

See the Sandbox FAQ for more information on how to use the Sandbox.

The Sandbox works best if you sort posts by "active".

Add Proposal

Search the Sandbox

Browse your pending proposals

Get the Sandbox Viewer to view the sandbox more easily

To add an inline tag to a proposal use shortcut link syntax with a prefix: [tag:king-of-the-hill]

\$\endgroup\$
  • \$\begingroup\$ How are tags added to questions? \$\endgroup\$ – guest271314 Jan 9 at 7:51
  • \$\begingroup\$ @guest271314 You can use this markup to create a tag in a draft: [tag:code-golf] \$\endgroup\$ – DJMcMayhem Aug 29 at 15:19
  • \$\begingroup\$ Why no featured anymore? Can't we have it auto-added or something? \$\endgroup\$ – JL2210 Sep 26 at 15:57
  • 1
    \$\begingroup\$ @JL2210 We now have a permanent info box that links to the Sandbox, so the featured tag isn't necessary \$\endgroup\$ – caird coinheringaahing Sep 29 at 13:43

2582 Answers 2582

-2
\$\begingroup\$

Technologic - Now what's THAT command do??

Daft Punk's song "Technologic" is all about actions that a user or computer does when it's working and being used. You goal is to write a program that has one command we will call the Technologic Command. This command will executes all of the actions like "buy it", "lock it", "code it", and "write it" in the order the lyrics are written on 'it'. What 'it' is is up to you, but you gotta let me know.

Rules

  • Any language can be used.
  • The song refers to an 'it'. That can be a block a memory, algorithm, function, file, or anything else a computer can manipulate directly or indirectly.
  • You must specify what 'it' is you will be performing these actions on. If you don't, you can only earn a maximum of 160 points.
  • Points will be deducted otherwise if a command is not used.
  • I'm not aware of any 'buy' command, method, function, subroutine or instruction so use a thesaurus and find the closest word you can actually program. I don't expect the program to actually buy or snap anything. Other words like mail and fax are possible, but not recommended.
  • If you have to use a synonym, you are not allowed to use that command again
  • Encompassing multiple objects into one artifact does not count. For example, taking the command "name it" literally means you won't be able to name an array of bytes, but you can name a file. Creating an object that holds both a file and an array of bytes is not allowed. That would make this too easy to get the maximum amount of points.

Scoring

  • There are 16 commands with a total possible score of 190 points.
  • 10 points for executing a command on the specified 'it' of your choosing (160 total)
  • 2 points for executing each command consecutively that references your 'it' (30 total)
  • 5 points for executing a command on something other than your 'it'
  • -3 points for every command skipped.

Command List

lyrics

Buy it, use it, break it, fix it,
Trash it, change it, mail - upgrade it,
Charge it, point it, zoom it, press it,
Snap it, work it, quick - erase it,
Write it, cut it, paste it, save it,
Load it, check it, quick - rewrite it,
Plug it, play it, burn it, rip it,
Drag and drop it, zip - unzip it,
Lock it, fill it, call it, find it,
View it, code it, jam - unlock it,
Surf it, scroll it, pause it, click it,
Cross it, crack it, switch - update it,
Name it, rate it, tune it, print it,
Scan it, send it, fax - rename it,
Touch it, bring it, pay it, watch it,
Turn it, leave it, start - format it.

\$\endgroup\$
  • \$\begingroup\$ This conversation has been moved to chat. \$\endgroup\$ – Dennis Sep 17 '15 at 21:06
  • \$\begingroup\$ I count way more than 16 commands here. There are 16 lines each with several commands on them. If we cound the hyphenated commands as two, there are 16 x 4 = 64 commands. \$\endgroup\$ – Level River St Sep 22 '15 at 22:01
  • \$\begingroup\$ @steveverrill A slight oversight. haha. I must've counted the lines knowing there were 4 commands on each line and didn't multiply the two together. \$\endgroup\$ – Luminous Sep 23 '15 at 12:31
-2
\$\begingroup\$

Just Golf 2016

(Related: A Kingdom Hearts VGM challenge) Sandbox note: potential duplicate?

Just Dance 2016 is coming out soon, and I know I'm definitely excited! However, let's take a quick trip back to 2009, when the original Just Dance was released. There are a lot of great songs, but I don't know who sung half of them!

The Challenge

Write a program that accepts a Just Dance song name from input and outputs the song's artist (as credited in-game.)

Here is the list of all songs and artists from Just Dance 1:
list pending

Rules and Assumptions

  • You may assume that the song will always be valid.
  • The song's title and artist must be properly capitalized.
  • You may not read any external files - the song data must be hardcoded.
  • If a song is covered (which several have been for various reasons), the program should return the cover artist (as they are credited in the game.)

Test Cases

Input: Eye of the Tiger
Output: Survivor

Input: Fame
Output: Irene Cara

Bonuses

  • Each game has had one song everyone was really excited about. This year, it's Ievan Polkka by Hatsune Miku. You get a bonus of -50 points if you accept this song as valid input.

  • Just Dance is fun, but why should we stop there? If you additionally accept songs fron the rest of the main series (Just Dance 2, 3, Greatest Hits/Best Of, 4, 2014, and 2015, not including DLC and skipping over any duplicates), you get a whopping -2009 points. Here is the full list for those games:
    list pending

    • Note that this doesn't include Just Dance 2016 songs.
    • This can be combined with the other bonus to get a total of -2059 bytes.

Meta Questions

  • Are the bonuses too big? (I'm mainly talking about the -2009 point bonus for including every song.)
  • Has anything been left out?
  • Is this enough of a challenge?
\$\endgroup\$
  • 1
    \$\begingroup\$ This looks like a dupe of codegolf.stackexchange.com/q/53678/194 . \$\endgroup\$ – Peter Taylor Sep 24 '15 at 20:24
  • \$\begingroup\$ @PeterTaylor I would say it isn't, that one asks for input in the form of a game and boss and returns a song, mine asks for a song and returns an artist. That one also has different scoring rules, and mine requires all items to be implemented. \$\endgroup\$ – ASCIIThenANSI Sep 25 '15 at 13:51
  • \$\begingroup\$ They're both "golf this given map / dictionary / associative array". Why would the techniques used be any different? \$\endgroup\$ – Peter Taylor Sep 25 '15 at 15:22
  • \$\begingroup\$ @PeterTaylor According to this meta post, the main qualification for duplicates is "Can answers from one question be copied over to the other with little or no modification and still be competitive?". I looked at the answers for the question you linked, and it doesn't seem like either would do very well if those techniques were used in this challenge. \$\endgroup\$ – ASCIIThenANSI Sep 25 '15 at 15:35
  • \$\begingroup\$ Would this be kolmogorov-complexity? \$\endgroup\$ – LegionMammal978 Sep 26 '15 at 17:16
  • \$\begingroup\$ @LegionMammal978 Yes. \$\endgroup\$ – ASCIIThenANSI Sep 27 '15 at 14:48
-2
\$\begingroup\$

Literally just printing the source code

Wait a second. We already have a contest where you print the source code. Right? Wrong.

The challenge

Print out the source code. Not to STDOUT, but to a physical printer.

The rules:

  • You must write a complete program that prints out its own source code with a printer connected to the computer.
  • No STDIN (or input of any kind), STDOUT, or STDERR.
  • No standard loopholes (includes no file input). No using lp(r/d) or similar commands.
  • The printed code should be a reasonable size (between size 8 and 18) and a legible font (pretty much means no wingdings).
  • You may assume that the user doesn't cancel the process and answers affirmatively to any system print dialogs.
  • You can assume that the printer works, is ready, doesn't need new ink/paper, etc.
  • If the language doesn't support printing, it is ineligible.
  • This is so shortest code, in bytes, wins.
\$\endgroup\$
  • \$\begingroup\$ This is a trivial extension of the quine challenge. All you have to do is say you're running it on Unix/Linux and pipe the output to lpr. \$\endgroup\$ – Mego Nov 1 '15 at 22:21
  • \$\begingroup\$ This needs a much tighter spec on the hardware. E.g. I assume you would consider it cheating to post an ordinary quine and say "On this computer, all console output is also logged to a continuous print spool", but there are computers which are configured like that for audit reasons. \$\endgroup\$ – Peter Taylor Nov 2 '15 at 14:39
-2
\$\begingroup\$

Print a sourcecode

Given 2 inputs(First input is truthy/falsy, second input is program in same language as submission):

  1. If the first input is truthy then transform the second input into same program but printing the source code(After modification) first.
  2. If the first input is falsy then transform the second input into same program but after the program finished it prints the source code(After modification). If the program doesn't halt, you may or may not modify the program.

It's code-golf, so the shorter answer is the winner.

For example in CJam, I don't write the program to do this. (> means output)

0 q
>{"_~"q}_~
0 0 1{_@+}11*;
>{"_~"0 0 1{_@+}11*;}_~
1 q
> {q](\o"_~"}_~
\$\endgroup\$
  • 7
    \$\begingroup\$ Sorry, I'm not quite sure what this question is asking. Would it be okay if you posted examples? \$\endgroup\$ – Sp3000 Nov 5 '15 at 14:29
  • \$\begingroup\$ @Sp3000 Please undo your downvote. The example is fixed. \$\endgroup\$ – Akangka Nov 7 '15 at 7:39
  • 3
    \$\begingroup\$ I didn't downvote though... \$\endgroup\$ – Sp3000 Nov 7 '15 at 8:13
-2
\$\begingroup\$

Restricted "Hello, World!"

The task is very simple, output Hello, World! to STDOUT. The thing that makes this different are the rules:

  • You need to provide a full functioning program, taking no input and outputting via STDOUT.
  • The program must not write anything to STDERR
  • The maximum amount of bytes you can use is 50
  • The program may only contain printable ASCII characters. Programs using CP437 and other encoding systems are not allowed
  • If a programming language is already used, you cannot use this same language again.
  • You cannot use any character of the prohibited character list. This is the twist:

Prohibited character list (PCL):

The prohibited character list is a list full of characters, which cannot be used in the following programs. For example:

If the list was: He\., you need to create a program, without the characters H, e, \ and .. These are not case-sensitive.

If you succesfully manage to write a program that doesn't use any characters, you may add new one character to the prohibited character list.

e.g.

If the old PCL was He\., and you managed to write a program that doesn't use any of these characters, you may add a new character to this list. For example (whitespace). The new PCL will be He \. (notice that the whitespace character is added).

Posting Snippet:

This might help you wit posting your submission:

#[Language Name], N bytes

 [code]

 (explaination etc.)

 Added character: [char]

 New PCL: [list + new char]

In the beginning, the PCL is empty. The last person who managed to create a program without a new program made in 2 days, wins!


I'm not really sure if it is flawed or not. If you have any suggestions or comments, feel free to post them below in the comment section :)

\$\endgroup\$
  • 2
    \$\begingroup\$ Already exists. \$\endgroup\$ – Arcturus Nov 22 '15 at 23:38
-2
\$\begingroup\$

What day of the week is Christmas?

Christmas is coming quickly, which leads to the question, what day of the week is Christmas this year? But what day of the week is Christmas for any year? Write a program that can do this. This is code golf, so the shortest code wins!

However, there is a major twist. No builtin functions to do this task is allowed!

Bonuses:

  1. If the program can handle B.C. years as negative numbers, then -25%
  2. If the program prints "The first Christmas!" for an input of -4 (4 B.C. is assumed to be when Jesus Christ was born), then -30 bytes
  3. If, for some reason, you really like builtins, +90%! So try NOT to use it!
\$\endgroup\$
  • \$\begingroup\$ The bonus for printing extra should be steeper, or no esolangs are going to go for it. \$\endgroup\$ – Addison Crump Nov 29 '15 at 1:45
  • \$\begingroup\$ @VoteToClose so more like 25% as well? \$\endgroup\$ – TanMath Nov 29 '15 at 1:48
  • \$\begingroup\$ No - I'd go static. Plus, this is really close to being a dupe... \$\endgroup\$ – Addison Crump Nov 29 '15 at 1:51
  • 2
    \$\begingroup\$ Near dupe of codegolf.stackexchange.com/questions/1003/… \$\endgroup\$ – Calvin's Hobbies Nov 29 '15 at 1:52
  • \$\begingroup\$ It's unspecified what format we should output in or what calendar we should use, and whether -4 should mean 4 BC or 5 BC. \$\endgroup\$ – lirtosiast Nov 30 '15 at 5:57
  • \$\begingroup\$ @ThomasKwa it should be obvious from the sentence that 4 B.C. is -4. Use the Gregorian calendar, output can be in MMDDYY \$\endgroup\$ – TanMath Nov 30 '15 at 6:09
  • \$\begingroup\$ How is MMDDYY a day of the week? \$\endgroup\$ – lirtosiast Nov 30 '15 at 16:32
  • \$\begingroup\$ @ThomasKwa sorry, it was pretty late when I wrote that so I mistakenly wrote MMDDYY. Just printing the day of the week is fine i.e. print "Sunday", "Monday", "Tuesday", etc. \$\endgroup\$ – TanMath Nov 30 '15 at 19:57
-2
\$\begingroup\$

Broken FizzBuzz - Greg Is Confused

(FizzBuzz suggested by quartata in chat)

(Related: Deletion of a blank line in source code which causes unexpected functionality, What? No error?, and Write a line in program that looks useless)

Meet Greg. Greg is the new debugger at your company, and he deals with checking programs to see if they work. If they don't, he tries to find out why and fix them.

Greg is rather new to programming and understands the basics, but still gets tripped up by some advanced things. Sometimes, programs don't work and he doesn't know why.

You don't really like Greg, so you decide to play a game. You create two nearly-identical FizzBuzz-style programs - one which works, and one which doesn't.

For example:

n = input()
if (n % 3 == 0) {
 print "Fizz"
}
if (n % 5 == 0) {
 print "Buzz"
}

works, but

n = input()
if (n % 3 = 0) {
 print "Fizz"
}
if (n % 5 == 0) {
 print "Buzz"
}

doesn't. Greg is confused (but not by something as simple as this).

And because Greg has a desk only a few feet away from you, your code must be as small as possible, so he doesn't catch on.

Rules

  • Your correct program must accept an integer as input and return output as specified below, and your incorrect program must do something else (such as throwing an error or giving invalid output).
    • The valid program's output must print "Fizz" if the number is divisible by 3, "Buzz" if it divisible by 5, "FizzBuzz" if it divisible by both 3 and 5, and nothing if it isn't divisible by 3 or 5.
    • The invalid program's output may do anything else.
  • Greg knows all programming languages to date, including super-obscure ones. Therefore, your answer may be in any language you choose (providing it was created before this challenge was posted.)
  • You MUST have the two programs be nearly identical, except for one small change. The more concealed or insignificant-looking, the better.
  • Greg uses PPCG and has participated in underhanded challenges before, so he knows about the C trigraph (??/). You can't trick him with it.
  • Greg has also seen replacing ASCII characters with nearly-identical Unicode or abusing fonts, meaning that won't work either. Therefore, your program's change must work with all fonts, any may not exploit visual similarity between characters with different code-points.
    • Changing an a to an A is allowed, as long as it's not obvious that that's what broke the program. However, changing a to <unicode character that looks exactly the same> is forbidden.
  • Both programs must be written in the same language with the same version.
  • Your answer must include:
    • The language both programs are written in
    • Two programs: one FizzBuzz program, and another that is broken
    • How to run both of them (the commands must be identical with identical arguments)
    • Why one doesn't work (in spoilertext)
    • The output of the broken one
  • Your programs must have a Levenshtein distance of no more than 10 from one-another. (Meaning that you may add, delete, or change up to 10 characters in the broken code from the correct one.)
  • Your score is the total bytecount of both of your programs.
  • The winner is the post with the smallest score over 20 votes.

Meta Questions

  • Is 10 too small a maximum Levenshtein distance? I was also considering 15.
  • Are any of my rules already forbidden by the standard loopholes? I'd like to remove them if possible to make the post shorter.
  • Similarly, should I remove or change any of my rules?
  • This is a code-golf version of this previous edit. Should I keep it as code-golf or change it back?
\$\endgroup\$
  • 1
    \$\begingroup\$ "replacing ASCII characters with nearly-identical Unicode" doesn't really express what that old chestnut does. "Exploiting visual similarity between characters with different code-points" is more accurate. Although it's arguable whether that covers e.g. switching space for non-breaking space, and I don't think it covers using non-whitespace non-printable characters (which with the right font are invisible). \$\endgroup\$ – Peter Taylor Dec 16 '15 at 16:44
  • 4
    \$\begingroup\$ I think there is something interesting here in making seemingly equivalent programs behave very differently. But I'm generally sceptical of underhanded pop-cons, because they're usually way too broad and this one doesn't seem to be an exception. The primary cause is probably that there's no actual task that the program should accomplish. That means you can literally write any code that leads to failure from a small change (which is probably most code although the failure will not be surprising for most of those changes). I'd recommend giving a task for at least one of the two programs. \$\endgroup\$ – Martin Ender Dec 16 '15 at 16:49
  • \$\begingroup\$ @PeterTaylor Maybe something like "Your program's change must work with all fonts, any may not exploit visual similarity between characters with different code-points"? \$\endgroup\$ – ASCIIThenANSI Dec 16 '15 at 16:53
  • \$\begingroup\$ @MartinBüttner I've changed it to two programs that should print "Hello, world!" (only the correct program will work). How does this look? \$\endgroup\$ – ASCIIThenANSI Dec 16 '15 at 16:57
  • 1
    \$\begingroup\$ There are some very closely related underhanded challenges: codegolf.stackexchange.com/q/31647/8478 codegolf.stackexchange.com/questions/23250/what-no-error codegolf.stackexchange.com/questions/19379/… \$\endgroup\$ – Martin Ender Dec 18 '15 at 16:37
  • \$\begingroup\$ @MartinBüttner I've added them in. Do you think they're close enough to be duplicates? \$\endgroup\$ – ASCIIThenANSI Dec 18 '15 at 16:42
  • \$\begingroup\$ @ASCIIThenANSI I can't predict how the community will vote, but I wouldn't mod hammer it. \$\endgroup\$ – Martin Ender Dec 18 '15 at 16:45
-2
\$\begingroup\$

Golf A Wiki

The Challenge

Golf a wiki. A wiki, for the purposes of this contest, is defined as a website with:

  • Content editable by all
  • Easy CamelCase (defined as a word with two capitals) linking
  • Different pages or articles that are the targets of the links

Your wiki can be a self-contained HTML file (e.g. TiddlyWiki), or a cgi-bin script (e.g. SigWik).

Scoring

Your score is the size of your program in bytes, divided by the number of extra features implemented plus one.

The possible extra features are:

  • Page history
  • Syntax for "nowiki", that is, something like <\noscript> in HTML that makes the text inside it not be wiki syntax.
  • A page list
  • A find page facility
  • Usernames and passwords (with registering)
  • Security levels (requires usernames and passwords, or possibly IPs?)
  • Delete pages
  • Change page titles
  • Redirects
  • Random page
  • Non-HTML formatting that is not just links [Should I remove this? I doubt it will be done.]

Lowest score wins, as this is code golf.

DISCLAIMER

ANSWERS WILL PROBABLY CONTAIN MAJOR SECURITY FLAWS. ONLY USE ON PRIVATE PORTS, UNLESS YOU WANT YOUR COMPUTER AND VERY POSSIBLY YOUR WHOLE NETWORK TO GET DESTROYED (FIGURATIVELY). [Is this too forceful?]

\$\endgroup\$
  • 3
    \$\begingroup\$ I would vote to close this as too broad. Among the problems I see: 1. The two given examples don't seem to be the same thing as each other 2. The complete lack of constraints mean that I could just automatically make every word a link. (This could be fixed by specifying one link syntax: for golfing I quite like the UseModWiki use of CamelCase for links). 3. I think I can get the "text formatting" feature for free by not escaping HTML characters. 4. Needs a big warning "Answers will likely contain major security flaws and should not be used on ports which are publicly visible" \$\endgroup\$ – Peter Taylor Dec 30 '15 at 10:49
  • 1
    \$\begingroup\$ Ok, thanks, I'll edit when I have time today. \$\endgroup\$ – Hipe99 Dec 30 '15 at 21:27
-2
\$\begingroup\$

Progress 100%

I am building a download manager and I need to show a progress of all my files been downloaded.

For that I created an event mechanism that reports on the progress of each individual file. It sends me the information on how many bytes B have been downloaded of file T total.

Please help me show the average progress of all the files.

Input

Integer C between 1 to 100, followed by new line, followed by C progresses separated by new line. Each progress is constructed of two numbers with the maximum size of 64 bits: B T, separated by space.

Input options

The input is a String available from the following options

  • file
  • stdin
  • method parameter

Output

Floating number between 0 to 1, the average of all the progresses. It must be displayed to 11 decimal places, floored.

Criterial

Shortest code wins

Example

Input file:

3
5 10
1024 1024
20 100

Output

0.56666666666

Explanation

((5/10) + (1024/1024) + (20/100)) / 3 = 17/30

Example2

Input file:

1
2 10

Output

0.2

Example3

2  
Long.MAX_VALUE Long.MAX_VALUE  
5 10

Explanation In this example Long.MAX_VALUE represent the maximum 64 bit value, so if you use 64 bit value for storing the sum of the averages it will not work in this case.

Output

0.66666666666
\$\endgroup\$
  • \$\begingroup\$ 1. It's not clear from your specification how the result should be computed. The "total progress" implies to me that I should figure out how many bytes have been downloaded of the total, i.e. sum(B)/sum(T). However, your first example suggests, that we should actually compute the arithmetic mean/average of the individual progresses. If so, please state this clearly. 2. By requiring 11 digits of accuracy, you require 64-bit floats (double precision), because 32-bit floats only have 7.something decimal digits. Is this intentional? (seeing your input is only 32 bits) \$\endgroup\$ – Martin Ender Apr 1 '15 at 20:39
  • \$\begingroup\$ @MartinBüttner how about now? I do want the high precision \$\endgroup\$ – Ilya Gazman Apr 1 '15 at 21:24
  • \$\begingroup\$ My first point still stands. It's not clear from the specification how the result should be computed. \$\endgroup\$ – Martin Ender Apr 1 '15 at 21:27
  • \$\begingroup\$ @MartinBüttner I expect you to process all the progresses and find the average one, not sure how to say it right. \$\endgroup\$ – Ilya Gazman Apr 1 '15 at 21:28
  • \$\begingroup\$ Just like that, but as far as I can see your challenge currently doesn't mention "average" or "arithmetic mean" anywhere. \$\endgroup\$ – Martin Ender Apr 1 '15 at 21:32
  • \$\begingroup\$ @MartinBüttner Anything else? \$\endgroup\$ – Ilya Gazman Apr 1 '15 at 21:40
  • \$\begingroup\$ Why did you remove it again? And what's the purpose of the hint? \$\endgroup\$ – Martin Ender Apr 1 '15 at 21:43
  • \$\begingroup\$ @MartinBüttner sorry had 2 windows opened. The hint helps you to understand that you cannot store the sum of all the progresses in 64 bit value. \$\endgroup\$ – Ilya Gazman Apr 1 '15 at 21:45
  • \$\begingroup\$ What does "up to 11 digits of accuracy mean"? That I can supply only 3 digits, but I may not supply 12? And what counts as a "digit of accuracy", anyway: are you talking decimal places or significant figures? And if significant figures, what is the correct output if the average progress is exactly 0? \$\endgroup\$ – Peter Taylor Apr 1 '15 at 22:37
  • \$\begingroup\$ @PeterTaylor I want an 11 digits after the dot of accuracy in the output. So 3/10 will produce 0.33333333333 and 0/10 will produce 0. Maybe you can suggest a better way of writing it down. \$\endgroup\$ – Ilya Gazman Apr 1 '15 at 22:40
  • \$\begingroup\$ I've edited in some changes. I would suggest also deleting the hint and replacing it with a test case. It would also be good to describe a test case (it will probably be too long to post) which demonstrates that it's not sufficient to use IEEE754 double-precision. \$\endgroup\$ – Peter Taylor Apr 2 '15 at 7:35
  • \$\begingroup\$ @PeterTaylor is it ready now? \$\endgroup\$ – Ilya Gazman Apr 2 '15 at 14:09
  • \$\begingroup\$ It would also be good to describe a test case (it will probably be too long to post) which demonstrates that it's not sufficient to use IEEE754 double-precision. \$\endgroup\$ – Peter Taylor Apr 2 '15 at 19:28
  • \$\begingroup\$ @PeterTaylor I don't understand what you are saying, can you please explain it a little bit more \$\endgroup\$ – Ilya Gazman Apr 2 '15 at 20:15
  • \$\begingroup\$ Since you're requiring programs to support averaging 2^31 numbers and you want output to a precision of about 35 bits, a naïve solution with 64-bit floating point will be incorrect, but that might not be obvious to everyone who would attempt an answer. \$\endgroup\$ – Peter Taylor Apr 2 '15 at 20:23
-2
\$\begingroup\$

There's an App SE Site for that

Oftentimes, when searching through StackExchange, I find myself seeking to post a question about something or another, but not knowing where to post it. That's where you come in.

The Challenge

Write a full-functioning program that does the following:

  1. Takes an input string
  2. Attempts to find suitable SE sites relevant to the input string (this is very flexible, but should not be returning English.SE for questions about Coffee, for example)
  3. Attempts to find 3 questions on each suitable site that may relate to the input string (should match the list of questions if I searched in the search bar of each site, sorted by number of votes)
  4. "Output" is a folder tree written to disk with the following qualities:
    • The highest folder of the tree should be named the input string.
    • The second-highest layer should consist of folders named the same as the sites on which the input string was found suitable.
    • The third layer should be <=3 .md files that are named the same as the questions found when searching through the suitable sites, the contents of which are the question's markup content.

Rules

  • You MUST query for this information. I don't want 50EB solutions.
  • "Suitable sites" are defined as the keyword appearing in the site description.
  • Run time should be <5 minutes for >3 MB internet speed.

Bonuses

There are no bonuses.

Remember - SE is a big place now, and, as of such, we must compensate with short code. This is , everybody, so the shortest solution wins!

\$\endgroup\$
  • 5
    \$\begingroup\$ "Whatever defines "suitable" for your code is up to you" is too broad IMO. \$\endgroup\$ – Peter Taylor Jan 25 '16 at 14:35
  • \$\begingroup\$ @PeterTaylor Refined. Please see edit. \$\endgroup\$ – Addison Crump Jan 29 '16 at 17:50
  • \$\begingroup\$ @RikerW I don't know what you're saying. \$\endgroup\$ – Addison Crump Jan 29 '16 at 17:57
  • \$\begingroup\$ Me neither. lol \$\endgroup\$ – Rɪᴋᴇʀ Jan 29 '16 at 17:58
  • 2
    \$\begingroup\$ What's the yardstick for whether two words are synonyms? If that's up to answers to decide, no-one will waste any bytes on it, so you should simplify the question by removing the mention of synonyms. Otherwise you need to add a source (and risk the question being largely a kolmogorov-complexity for that list). \$\endgroup\$ – Peter Taylor Jan 29 '16 at 19:48
  • \$\begingroup\$ @PeterTaylor Fixed. \$\endgroup\$ – Addison Crump Jan 29 '16 at 20:45
-2
\$\begingroup\$

Write a polyglot (a program that works on several languages) that produces the // this is a comment output.

Example (JS + Plain PHP + Plain HTML) (74 / 3 = 24.66 points)

// this is a comment<?php ob_start();?><!--
alert("// this is a comment");

Another Example (CoffeeScript + CJam + brainfuck) ()

e###-[----->+<]>----..+[--->++<]>.---[->++++<]>.------------.+.++++++++++.+[---->+<]>+++.-[--->++<]>-.++++++++++.+[---->+<]>+++.[->+++<]>+.-[->+++ <]>.+[->+++<]>.++++++++++++.--..--------.+++++++++.++++++.
"// this is a comment"
e### alert "// this is a comment"

Scoring

Your score will be code byte length / num langs

The smallest score wins!

\$\endgroup\$
  • \$\begingroup\$ Is there anything that makes this significantly different than polyglot Hello World? \$\endgroup\$ – Geobits Feb 1 '16 at 14:03
  • \$\begingroup\$ @Geobits this is more easy, really \$\endgroup\$ – username.ak Feb 1 '16 at 14:37
-2
\$\begingroup\$

Are bug hunts like this allowed?

Bug Hunt - Make a change in a Git repo that Git cannot detect

Challenge: In the working directory of a Git repo, make a change that Git cannot detect.

  • Changes can be on any file in the working directory or subdirectories that is tracked by Git.
  • You may use any tool to make the change, or script your own program to do so.
  • For tools, state the tool used and the steps to reproduce.
  • For script or program, produce the code (please use GitHub Gist if it's too long). State the language and compiler version, if any.
  • You can also do the change manually. In this case, outline the steps.
  • State the version and platform of the Git binary used.
  • Show a comparison between an actual clean working directory and the modified one to show the change Git can't detect.
  • Show that git status says "nothing to commit, working directory clean".

Winning Criterion:

  • The extend of the undetected change - the bigger the change, the better.
  • Reasonably latest Git version.
  • Easy to reproduce.
  • [Optional] Short code or simple steps. It's OK if it's not, as long as you do something exceptional.
  • Most upvotes (for tiebreaker reasons).
  • [Optional] You located an actual unfixed bug in the Git source code, and not just a quirk in something else.

Restrictions:

  • Obviously, using .gitignore is not allowed. It's a bug hunt. Changes that Git is designed to ignore are not allowed. We should reasonably expect Git to see and report the change, but find that Git doesn't.
  • Use latest Git version you can get. Some old version with some bug that's already fixed doesn't count.

Please let me know if this is OK, so I can go ahead to post it on the main site.

I could only find . A suggested tag would have been the best.

\$\endgroup\$
  • 1
    \$\begingroup\$ Currently bug hunts aren't allowed. Because no one proposed them, you can propose bug hunts by asking a question on meta. \$\endgroup\$ – user48538 Mar 20 '16 at 12:28
  • 1
    \$\begingroup\$ I have a strong feeling that this won't be allowed. We don't allow code that exploits bugs or harms computers. \$\endgroup\$ – Nathan Merrill Mar 20 '16 at 12:31
  • \$\begingroup\$ @NathanMerrill source? \$\endgroup\$ – ADTC Mar 21 '16 at 0:17
  • 2
    \$\begingroup\$ meta.codegolf.stackexchange.com/q/4829/20198 \$\endgroup\$ – Nathan Merrill Mar 21 '16 at 2:21
  • \$\begingroup\$ Is this essentially asking for an AES collision? \$\endgroup\$ – Peter Taylor Mar 21 '16 at 11:14
  • \$\begingroup\$ @PeterTaylor now that wouldn't be a bug, would it? But yes, I guess that's also a valid scenario. Can you create one? \$\endgroup\$ – ADTC Mar 23 '16 at 6:06
  • \$\begingroup\$ This sandbox post has had little activity in a while and little positive reception from the community. Please improve / edit it or delete it to help us clean up the sandbox. \$\endgroup\$ – programmer5000 Jun 9 '17 at 14:11
-2
\$\begingroup\$

Calculate the number of consecutive 0's at the end of n!


Simply put, write a program or function that takes n and returns the number of consecutive 0's at the end of n!


Examples

Input: 12
Output: 2

Input: 12345
Output: 3082

Input: 100000
Output: 24999
\$\endgroup\$
  • \$\begingroup\$ I think this might be a dupe. \$\endgroup\$ – Rɪᴋᴇʀ Apr 2 '16 at 21:45
  • \$\begingroup\$ @EasterlyIrk Do you have a link to the duplicate problem? \$\endgroup\$ – Mr Public Apr 4 '16 at 11:38
  • \$\begingroup\$ This is extremely similar. \$\endgroup\$ – FryAmTheEggman Apr 4 '16 at 17:20
  • 2
    \$\begingroup\$ This proposal would be similar to finding the position of the last nonzero digit, but it's not similar to the linked challenge, which finds the value of the last nonzero digit \$\endgroup\$ – Luis Mendo Apr 6 '16 at 11:14
-2
\$\begingroup\$

Self-identification before golfing

Since golfed code is harder to read, answers often contain an less golfed version. There are a number of potential golfing transformations depending on the language, so you may be able to score more highly using a more traditional language. Some examples of golfing transformations:

  • Removal of spaces, tabs and/or newlines
  • Removal of disambiguating parentheses
  • Removal of braces around single controlled statements
  • Conversion from statements to comma operator
  • Removal of explicit return statements
  • Renaming identifiers

Your challenge is to write a program or function that can identify an ungolfed version of itself. Scoring is based on the number of golfing transformations that can be recognised. The submission must be capable of identifying all "original" code that is itself capable of self-identification (at least one such code must exist). Each supported transformation scores 1 point, but there are also bonus points available:

  • 1 bonus point if the transformation can be repeated multiple times
  • 1 bonus point of the program rejects at least one invalid transformation of itself (e.g. white space added inside a keyword)
  • 1 bonus point if the program only accepts valid transformations of itself
  • 1 bonus point if the transformation shortened the code (so if you only supported renaming a 1-letter variable to another letter, you would not qualify)
  • 1 bonus bonus point if in addition the transformed program recognises the original program as a transformation of itself

Example: A submission accepts the name of another program as a command-line parameter. It opens itself using its own name hard-coded into itself. It recognises the following transformations:

  • A change to the hard-coded file name (3 points, as there is only one file)
  • A change to the amount of space between words (5 points, as there are no invalid transformations to reject)
  • A change to the names of its variables (4 points, as it doesn't check whether the variables are renamed consistently or to keywords)

Total score: 12 points.

In the event of a tie on score, shortest code wins.

Tags: code-golf, quine

\$\endgroup\$
  • 4
    \$\begingroup\$ This is hopelessly subjective. \$\endgroup\$ – feersum Apr 5 '16 at 13:35
-2
\$\begingroup\$

Make a quine without using string literals

A quine is a computer program that prints out it's own source code to stdout. Your task is to make one that doesn't use string literals.

You cannot:

  • Have any empty program
  • Read your source code directly or indirectly (i.e. form a file)
  • Use error messages to print out the source code
  • Rely on language features to print out the source
  • Relying on a REPL environment

A string literal is a:

  • String type (obvious)
  • Number used to store the character (sorry BF!)
  • Other predefined constant

You are encouraged to compute your own source code.

\$\endgroup\$
  • 1
    \$\begingroup\$ This hits two of the "things to avoid when writing challenges": do X without Y and popcons. (I assume it's an attempt to finesse a third: generalised quines). It also has some fairly bad phrasing: what language can print anything without using "language features"? In what way does BF use literals? How many languages can compute anything without using at least one constant? \$\endgroup\$ – Peter Taylor Apr 12 '16 at 7:27
-2
\$\begingroup\$

Random Wikipedia Browsing

Here's a short one for you. Create a program or function prints or returns the title of a random Wikipedia page (similar to Alt + x functionality)

Rules:

  • Program or function will take no input
  • Program or function will print to STDOUT (or nearest equivalent) or return only the page name. I don't care about trailing spaces or newlines. Preceding spaces or new lines are disallowed
  • Program or function may not access a list of Wikipedia page names stored within a local file.
  • There is no requirement to use English language Wikipedia (en.wikipedia.org)
  • Page must be chosen (psuedo) randomly

For reference, here is a link to the Wikipedia API. Shortest program or function in bytes wins.

\$\endgroup\$
  • \$\begingroup\$ Bash: xdg-open http://bit.ly/19UDVJs (I think it's open). That Bitly link points to the Random Page link, which redirects to a random page. Wouldn't be hard to find a shorter URL, either. \$\endgroup\$ – Nic Hartley Apr 14 '16 at 17:10
  • \$\begingroup\$ Aww man, I had no idea that existed, guess it makes this pretty trivial \$\endgroup\$ – wnnmaw Apr 14 '16 at 17:11
  • \$\begingroup\$ Yep. Though if the language's builtins don't support automatic handling of redirects, it might be more challenging. \$\endgroup\$ – Nic Hartley Apr 14 '16 at 17:11
  • \$\begingroup\$ Could I disallow using that link? \$\endgroup\$ – wnnmaw Apr 14 '16 at 17:12
  • \$\begingroup\$ I dunno, to be honest. I'm not very good at writing challenges. \$\endgroup\$ – Nic Hartley Apr 14 '16 at 17:13
  • \$\begingroup\$ Relevant chat discussion, this challenge is trival \$\endgroup\$ – wnnmaw Apr 14 '16 at 17:21
  • \$\begingroup\$ @wnnmaw the Random Page is often used for wiki-racing. It's pretty fun. You can do either shortest distance (pages traversed), or fastest time. Maybe you could make this into a King of the Hill challenge to write a bot that wiki-races against other bots? \$\endgroup\$ – mbomb007 Apr 21 '16 at 18:15
-2
\$\begingroup\$

Golf a golf-scoring program!

Given a space delimited array of integers, find the smallest number. It's that simple.

[Meta] This may in fact be a duplicate. Please tell me if so.

\$\endgroup\$
  • 1
    \$\begingroup\$ This is basically a dupe of any regular sorting question, isn't it? Particularly something like Sign that word. \$\endgroup\$ – FryAmTheEggman Jun 9 '16 at 12:52
-2
\$\begingroup\$

Oh noes! A site redesign is eating my privileges!


PPCG is graduating and will soon receive a new design. Unfortunately for everbody except some people, the new design will also mean losing privileges due to higher reputation requirements.

Now, losing some privileges is a small sacrifice for the Magnificent Glorious Site Redesign®©™, but… How much do we stand do lose?

The challenge

Your program / function receives a reputation level (e.g. 535). Output the privileges that are currently available to it, but will not be available after the redesign.

Output

Output can be either an array or a string that's separated by a delimiter. The delimiter may not be any of A-Za-z<space>. Multi-character delimiters may end in a space, though.

If there are no matches, your program should output either an empty array or a falsy value.

Examples

Input
25000
Output
[]
Input
24999
Output
["access to site analytics"]
Input
2000
Output
["access to moderator tools","approve tag wiki edits","cast close and reopen votes","create tag synonyms"]
Input
535
Output
["cast close and reopen votes"]
Input
350
Output
["access review queues"]
Input
5
Output
[]
Input
4
Output
["participate in meta"]

Deliberately ignoring the facts in the last example.

Available privileges

For convenience, here is a JSON array with available privileges and the required reputation before / after:

[[5000,25000,"access to site analytics"],[4000,20000,"trusted user"],[3500,15000,"protect questions"],[2000,10000,"access to moderator tools"],[1500,5000,"approve tag wiki edits"],[500,3000,"cast close and reopen votes"],[1250,2500,"create tag synonyms"],[1000,2000,"edit questions and answers"],[750,1000,"established user"],[1000,1000,"create gallery chat rooms"],[350,500,"access review queues"],[150,300,"create tags"],[250,250,"view close votes"],[125,125,"vote down"],[100,100,"edit community wiki"],[100,100,"create chat rooms"],[75,75,"set bounties"],[50,50,"comment everywhere"],[20,20,"talk in chat"],[15,15,"flag posts"],[15,15,"vote up"],[10,10,"remove new user restrictions"],[10,10,"create wiki posts"],[1,5,"participate in meta"],[1,1,"create posts"]]

At index 0 is the reputation before, at index 1 is the reputation after. (The privilege reduce ads (200 reputation) is not available to beta sites and therefore not included in this list.)

Standard I/O and loophole rules apply.

\$\endgroup\$
  • \$\begingroup\$ Related. It's borderline whether this adds enough to not count as a duplicate: I would vote that it does, but I wouldn't cast my supervote. \$\endgroup\$ – Peter Taylor Jul 12 '16 at 16:21
  • \$\begingroup\$ @PeterTaylor I'm thinking of changing the challenge to allow submissions to download the privilege page. I guess that would make it distinct enough. \$\endgroup\$ – user2428118 Jul 13 '16 at 10:53
  • \$\begingroup\$ Turns it into a hybrid parse-HTML and merge data sources question. Yes, I think that's novel. You should make it very clear that the answers should keep working after the contents of the privilege page are updated to show the new rep levels; and possibly you should take a backup copy of the page in case of future addition of new privileges. \$\endgroup\$ – Peter Taylor Jul 13 '16 at 11:01
-2
\$\begingroup\$

Plot Partial Node Network

I have a 440*3 matrix that looks like:

1   144 Title1
1   152 Title2
1   135 Title3
2   3 Title4
2   12 Title5
2   107 Title6
2   31 Title7
3   4 Title8
3   147 Title9
3   0 Title10
4   end Title11
4   0 Title12
4   0 Title13
5   6 Title14
5   7 Title15
5   10 Title16
5   9 Title17

The left column are the starting points eg in the app all the 1's on the left would be on the same page. They lead to three choices, pages 144,152,135. These pages can each then lead to another page, and so on until the middle column says 'end'.

challenge Each number has an associated title in column three. I would like to have a function whereby if you input a given title it will plot all the possible starting points and their associated paths that will lead there. This should be a lot smaller and therefore graph friendly.

Example e.g.

44  234  tes
186  187  Frac
187  154  Low
154  end  Coll
99  101  adf
23   52   Med
52   11   Lip
11   42   AAA
42   154   BBB
154   end  Coll

EDIT - I added to the example. In the winning entry these new nodes will not be plotted as they do not lead to Coll.

I made this example to show how column 1 leads to a value in column 2 which then refers to a value in column 1 until you reach the end. Different starting points can ultimately lead to different length paths to same destination. so this would look sometigng like: All paths leads to Coll

So here, I wanted to see how you could go from all start points to 'Coll'

Input A data.frame like that illustrated (with not relevant rows included) and a given title

Rules -any language is fine as long as it will easy work with tab separated data laid out as shown

Output A graph like the one included for a given title

Win Criteria Shortest Runtime to make a png with graph

\$\endgroup\$
  • \$\begingroup\$ A question should have one challenge, not two. And a challenge should ideally have one goal, not two; and should certainly have a clear description not only of the input but also of the output. \$\endgroup\$ – Peter Taylor Jul 13 '16 at 16:14
  • \$\begingroup\$ Hi Peter, thanks for this. I've edited accordingly \$\endgroup\$ – cianius Jul 13 '16 at 16:16
  • \$\begingroup\$ Similar, also. \$\endgroup\$ – Peter Taylor Jul 13 '16 at 22:58
  • \$\begingroup\$ they're similar but not the same. they dont solve the problem of just plotting the rows that lead to Coll. \$\endgroup\$ – cianius Jul 14 '16 at 7:30
  • \$\begingroup\$ i edited example to clarify this Peter :) \$\endgroup\$ – cianius Jul 14 '16 at 7:45
  • \$\begingroup\$ I do like this question, but I currently do not support it as a question, due to it being unclear as to exactly what the png can and can not look like. I do support graphical output questions. \$\endgroup\$ – Rohan Jhunjhunwala Jul 15 '16 at 1:47
-2
\$\begingroup\$

The Library Problem

Bob has a very annoying problem. His boss told him to write a cat program that redirects the standard input to the standard output. But he recently installed a virus on his computer which deleted every libraries on it.

Now he really need to create this program without using any library (even the language standard library). It need to run at least on one operating system with one architecture.

Challenge

Write a program or that redirects the standard input to the standard output without using any library or external program/command to run to help Bob. You can use system calls and interrupts for example, but your program must not run in ring 0 mode (most operating systems like Microsoft Windows or GNU/Linux have kernels which prevent programs from doing anything, but MS-DOS for example let programs do everything).

  • Input: anything (text, binary)
  • Output: exactly the same as the input

This is , so shortest answer in bytes wins!

Example Input and Output

First:

  • Input: Hello, world!
  • Output: Hello, world!

Second:

  • Input: ...
  • Output: ...
\$\endgroup\$
  • \$\begingroup\$ That's just this challenge isn't it? \$\endgroup\$ – Martin Ender Jul 21 '16 at 15:26
  • \$\begingroup\$ @MartinEnder This challenge is about doing a cat program without using any library or external command/program even the standard library built with the language. \$\endgroup\$ – user54187 Jul 21 '16 at 15:30
  • \$\begingroup\$ So everything would need to be written in assembly or equivalent? \$\endgroup\$ – AdmBorkBork Jul 21 '16 at 15:34
  • \$\begingroup\$ @TimmyD Yes for example, but I think there are other lower-level languages which allow this. \$\endgroup\$ – user54187 Jul 21 '16 at 15:34
  • 3
    \$\begingroup\$ In that case it just seems like the same challenge limited to a small set of languages? In that case it would probably still be considered a duplicate and the usual course of action is to offer a bounty for the language you want to see a solution in. \$\endgroup\$ – Martin Ender Jul 21 '16 at 15:38
  • \$\begingroup\$ @MartinEnder You need a lower-level language but it doesn't mean that every program made using a lower-level language works with this challenge. See this answer for example which uses a function from the standard library codegolf.stackexchange.com/a/62309/54187. \$\endgroup\$ – user54187 Jul 21 '16 at 15:46
-2
\$\begingroup\$

Quine-ify PPCG Answers!

Write a program that, when executed, returns the markdown file to your answer.

So, something like this:

#Python: 123 bytes

`{insert code here}`

Required things:

  • Header must be one hash (#)
  • The "code part" must be indented with four spaces (or surrounded with backticks if it's a one-liner).
  • The code part must be the actual code used to run the program.
  • There must be a separation of a newline between the header and the code.
  • The program's display bytecount MUST equal the program's actual bytecount.

Meta:

  • Most importantly: is it even possible, at all?
  • Do I need more clarifications?
  • Has this been done already?
\$\endgroup\$
  • 4
    \$\begingroup\$ "Most importantly: is it even possible, at all?" Definitely possible and in most languages no more difficult than a standard quine. The points in this answer probably apply as well. Also the third-to-last paragraph in this answer since languages with longer names will have a disadvantage. And finally, there's this related challenge (same thing without the quine part). \$\endgroup\$ – Martin Ender Jul 27 '16 at 7:25
  • \$\begingroup\$ Actually, it's just too easy. Just use a normal quine with stuff before. \$\endgroup\$ – Erik the Outgolfer Aug 3 '16 at 17:50
-2
\$\begingroup\$

Alphabet Circle

This post got very negative feedback, so it's apparent that it needs tweaking in the sandbox before I attempt to repost it on PCG


With all the new alphabet xxx challenges, I've decided I'll give my own challenge.

Input

An Integer, (or your languages equivalent) r, such that 0 < r ≤ 26. (you don't need to validate this)

Output

An alphabet circle. Must meet the following criteria:

  • Smoothly interpolated from A at the center and Z at the edge.
  • Each point in the circle is the distance from the center offset so that 0 = A, 1 = B, 2 = C etc...
  • Be printed to STDOUT

Examples

r=26

enter image description here

r=15

enter image description here

Boilerplate

Anonymous classes and functions are fine. General Code Golf rules apply. Shortest code in bytes wins!Except Jelly

\$\endgroup\$
  • 8
    \$\begingroup\$ Please remove the Except Jelly part... \$\endgroup\$ – TuxCrafting Aug 3 '16 at 11:31
  • \$\begingroup\$ @TùxCräftîñg no \$\endgroup\$ – Shaun Wild Aug 3 '16 at 11:32
  • 4
    \$\begingroup\$ Disallowing language are a thing to avoid when writing challenges \$\endgroup\$ – TuxCrafting Aug 3 '16 at 11:35
  • \$\begingroup\$ It's triple super scripted, it's a joke. I'm not removing it. Get a sense of humour! \$\endgroup\$ – Shaun Wild Aug 3 '16 at 11:49
  • 4
    \$\begingroup\$ Since you mention negative feedback, my negative feedback would be that a glut of recent challenges on theme X (in this case alphabet layout) is a strong reason to avoid more challenges on theme X for a while, not to add to the pile. Variety is good. If I were you I'd hold this challenge for a month. Moving onto positive feedback, the spec needs to define the desired layout more clearly. I can't work out what the precise criterion is for which letter to place in each space. \$\endgroup\$ – Peter Taylor Aug 3 '16 at 14:51
  • \$\begingroup\$ If a position is not an integer distance from the centre, should the distance be truncated, rounded up/down or something else? \$\endgroup\$ – trichoplax Aug 6 '16 at 12:11
  • \$\begingroup\$ Could you specify whether leading/trailing spaces and newlines are permitted/required? Does the circle need to be framed in a square of matching size, or can it always be in a square of a fixed maximum size? \$\endgroup\$ – trichoplax Aug 6 '16 at 12:15
  • 1
    \$\begingroup\$ I think this would work best as a kolmogorov-complexity just for the size 26 pattern. That'd avoid any issues with defining how to interpolate the circles (or, indeed, defining the pattern generally, as it would be defined via stating the intended output). \$\endgroup\$ – user62131 Nov 24 '16 at 5:24
-2
\$\begingroup\$

Your task is to print the Champernowne constant (A033307) indefinitely.

There must be no spaces in your output and the solution with the fewest bytes wins!

\$\endgroup\$
  • 1
    \$\begingroup\$ 1. The Cham-whatever constant has infinitely many digits, making this challenge the same as this \$\endgroup\$ – Leaky Nun Aug 4 '16 at 18:23
  • 1
    \$\begingroup\$ 2. Duplicate. \$\endgroup\$ – Leaky Nun Aug 4 '16 at 18:25
  • \$\begingroup\$ @LeakyNun To prevent this being a duplicate could the challenge be "Print the Champernowne constant in base n", where the input is the base? \$\endgroup\$ – ASCIIThenANSI Aug 5 '16 at 14:35
  • \$\begingroup\$ Also, this question isn't self contained. If you were to post an acceptably modified version of this, please explain what this constant/sequence is within the question itself, even if there is a link \$\endgroup\$ – MildlyMilquetoast Jan 20 '17 at 1:03
-2
\$\begingroup\$

Nasty Nasty Bugs

Help the programmer provide detailed instructions to the team on how to deal with bug fixes.
The team's goto instructions for dealing with bugs goes like this.

For the twelfth bug of Christmas, my team leader said to me 

    Tell them it's a feature
    Say it's not supported
    Change the documentation
    Blame it on the hardware
    Find a way around it
    Say they need an upgrade
    Reinstall the software
    Ask for a dump
    Run with the debugger
    Try to reproduce it
    Ask them how they did it and
    See if they can do it again.

The indentation must comply with the teams coding standards, so it may either be tabs or four spaces (since the team's editors expand tabs to spaces anyway). The team lead doesn't mind a leading or trailing newline, but there is no tolerance for the dreaded standard loopholes. Also the office is a bit cramped so the code needs to be as small as possible. These lyrics are moderately adapted from http://www.manbottle.com/humor/twelve_bugs_of_christmas

\$\endgroup\$
  • \$\begingroup\$ What is the actual challenge? A kolmogorov-complexity to reproduce the quoted text verbatim? \$\endgroup\$ – Peter Taylor Aug 8 '16 at 21:41
  • \$\begingroup\$ whoops should have tagged it as such @PeterTaylor \$\endgroup\$ – Rohan Jhunjhunwala Aug 8 '16 at 21:42
  • 6
    \$\begingroup\$ There doesn't seem to be much of a pattern here. What does this add over other kgc questions? (And why isn't it a dupe of the Rickroll challenge?) \$\endgroup\$ – FryAmTheEggman Aug 9 '16 at 20:23
  • \$\begingroup\$ @FryAmTheEggman I could put all 12 verses of the 12 bugs of christmas in. But then it could be a dupe of the 12 days of christmas challenge \$\endgroup\$ – Rohan Jhunjhunwala Aug 9 '16 at 20:24
-2
\$\begingroup\$

Crab Canon

A crab canon is a piece of music where the same tune is played backwards and forwards at the same time, and it somehow sounds nice. The most famous example is this one by Bach. In Godel, Escher, Bach, Douglas Hofstadter wrote a crab canon in dialog form, in which the characters of Achilles and the Tortoise alternate lines, with one set of lines being the same as the other set except backwards. Somehow, it makes sense.

The challenge is to write a program inspired by this art form. The only requirement is that there has to be some sort of reversal of the source code involved. For example, you could make a program that:

  • Prints its own source code, but backwards
  • Does the same thing when reversed
  • Both of the above at the same time
  • Or make up something creative and wow the voters!

The reversal can happen on pretty much whatever level you want: lines of code, characters, characters within lines, or whatever makes sense for your language. The Hofstadter Crab Canon has some small changes between the two sets of lines for the sake of coherence, you can do something similar if you feel it is necessary.

This is a popularity contest, the answer with the most votes wins.

\$\endgroup\$
  • 7
    \$\begingroup\$ This is without a doubt too broad. See codegolf.stackexchange.com/tags/popularity-contest/info \$\endgroup\$ – Peter Taylor Aug 16 '16 at 7:10
  • \$\begingroup\$ @PeterTaylor FYI there's something wrong with that link's formatting \$\endgroup\$ – tbodt Aug 16 '16 at 18:07
  • \$\begingroup\$ There isn't any formatting. I just pasted the link directly. And it works for me. \$\endgroup\$ – Peter Taylor Aug 16 '16 at 19:11
  • \$\begingroup\$ @PeterTaylor hmm, seems to have fixed itself... \$\endgroup\$ – tbodt Aug 16 '16 at 19:12
-2
\$\begingroup\$

Left and Right

Given an input string, in ASCII, output ")|]" as many times as the case-insensitive word "right" appears in input, and output "(|[" as many times as the case-insensitive word "left" appears in input. The order is irrelevant. If and only if no occurences of these words are in input, output "X|X". Spacing between items is optional

This is , less bytes is best

Test cases:

input -> output
RightRightighteftleft -> (|[ )|] )|], or some other ordering
this doesn't contain either word -> X|X
LEfT, LeFT, leFT, righT -> (|[ (|[ (|[ )|]
(|[ -> X|X
\$\endgroup\$
-2
\$\begingroup\$

Petals around the Roses

Given 5 numbers from 1 to 6, calculate the number of Roses, Petals and Roots. Try guessing the formulas yourself by visiting http://jetpackshark.com/RPS before reading anybody's answers. (The dice-like display is significant.)

This is , so the shortest program wins.

\$\endgroup\$
  • 2
    \$\begingroup\$ If you're looking for a "solve-the-puzzle" challenge, the site for that is Puzzling. If you want it to be a code-golf, then please include a formula for how the roses, petals, and roots are calculated. \$\endgroup\$ – Nathan Merrill Aug 16 '16 at 13:06
  • 1
    \$\begingroup\$ Or at the very list a definition of roses, petals, and roots in this context. At present this question makes no more sense than the output of a Markov text generation process. \$\endgroup\$ – Peter Taylor Aug 16 '16 at 13:44
-2
\$\begingroup\$

Write a Brainfuck interpreter in Brainfuck

Since Brainfuck is known to be turing-complete, it is possible to write a Brainfuck interpreter in Brainfuck. This is what you're supposed to do.

You will get the input from the standard input and output to the standard output. This is a programming-puzzle, so the length is not top priority, however if there are multiple solutions, the shortest one wins!

\$\endgroup\$
  • \$\begingroup\$ BF interpreter (non language specific) challenge has already been done, and language exclusive challenges generally aren't good \$\endgroup\$ – Destructible Lemon Aug 19 '16 at 1:45
-2
\$\begingroup\$

Щoгкeгs of tиe щoгld, цпite!

Iпtгodцctioп

Iп tиe Iпteгпets, people sometimes liкe to stчlize tиeiг posts дs if tиeч щeгe щгitteп iп д diffeгeпt scгipt. Tидпкs to tиe пotoгietч of Soviet Яцssiд, tиe Cчгчlic scгipt seems to бe pдгticцlдгlч fдvoгed.

Бцt щидt cдп д пext-dooг tгoll do if tиeч'гe пot д pгogгдmmeг? Mдпцдllч гeplдciпg eдcи дпd eveгч letteг cдп бe qцite tedioцs...

Cидlleпge

Чoц дгe to щгite д pгogгдm tидt щill дccept дп дгбitгдгilч loпg iпpцt of Lдtiп cидгдcteгs дпd sцбstitцte some letteгs щitи similдгlч looкiпg Cчгчlics cидгдcteгs. Tиe oцtpцt sиoцld бe ideпticдl to tиe oцtpцt pгodцced бч tиe folloщiпg цпgolfed C# scгipt:

цsiпg Sчstem;
цsiпg Sчstem.Collectioпs.Geпeгic;
цsiпg Sчstem.Liпq;

pцбlic clдss Test
{
    pцбlic stдtic void Mдiп()
    {
        Dictioпдгч<cидг, cидг> tгдпs = пeщ Dictioпдгч<cидг, cидг>{
            {'A', 'д'},
            {'a', 'д'},
            {'B', 'Б'},
            {'b', 'б'},
            {'N', 'И'},
            {'b', 'и'},
            {'K', 'К'},
            {'k', 'к'},
            {'N', 'П'},
            {'n', 'п'},
            {'R', 'Я'},
            {'r', 'г'},
            {'U', 'Ц'},
            {'u', 'ц'},
            {'W', 'Щ'},
            {'w', 'щ'},
            {'Y', 'Ч'},
            {'y', 'ч'}
        };

        stгiпg s; щиile((s = Coпsole.ЯeдdLiпe()) != пцll) {
            Coпsole.ЩгiteLiпe(
                пeщ stгiпg(s.Select(c => tгдпs.CoпtдiпsКeч(c) ? tгдпs[c] : c).
                    Toдггдч()
                )
            );
        }
    }
}

Tиe sиoгtest code щiпs.

Exдmple Iпpцt дпd Oцtpцt

Iпpцt:

As we know, the goal of every struggle is victory. But if the proletariat is to achieve victory, all the workers, irrespective of nationality, must be united. Clearly, the demolition of national barriers and close unity between the Russian, Georgian, Armenian, Polish, Jewish and other proletarians is a necessary condition for the victory of the proletariat of all Russia.

We are for the withering away of the state, and at the same time we stand for the strengthening of the dictatorship of the proletariat, which represents the most powerful and mighty of all forms of the state which have existed up to the present day. The highest development of the power of the state, with the object of preparing the conditions of the withering away of the state: that is the Marxist formula. Is it "contradictory"? Yes, it is "contradictory." But this contradiction is a living thing and wholly reflects the Marxist dialectic.

Oцtpцt:

дs щe кпoщ, tиe goдl of eveгч stгцggle is victoгч. Бцt if tиe pгoletдгiдt is to дcиieve victoгч, дll tиe щoгкeгs, iггespective of пдtioпдlitч, mцst бe цпited. Cleдгlч, tиe demolitioп of пдtioпдl бдггieгs дпd close цпitч бetщeeп tиe Яцssiдп, Geoгgiдп, дгmeпiдп, Polisи, Jeщisи дпd otиeг pгoletдгiдпs is д пecessдгч coпditioп foг tиe victoгч of tиe pгoletдгiдt of дll Яцssiд.

Щe дгe foг tиe щitиeгiпg дщдч of tиe stдte, дпd дt tиe sдme time щe stдпd foг tиe stгeпgtиeпiпg of tиe dictдtoгsиip of tиe pгoletдгiдt, щиicи гepгeseпts tиe most poщeгfцl дпd migиtч of дll foгms of tиe stдte щиicи идve existed цp to tиe pгeseпt dдч. Tиe иigиest developmeпt of tиe poщeг of tиe stдte, щitи tиe oбject of pгepдгiпg tиe coпditioпs of tиe щitиeгiпg дщдч of tиe stдte: tидt is tиe Mдгxist foгmцlд. Is it "coпtгдdictoгч"? Чes, it is "coпtгдdictoгч." Бцt tиis coпtгдdictioп is д liviпg tиiпg дпd щиollч гeflects tиe Mдгxist diдlectic.

\$\endgroup\$
  • 2
    \$\begingroup\$ Welcome to PPCG and thanks for using the Sandbox! Unfortunately, this challenge is essentially the same as this question. Also, please don't write your specs in this "stylised" manner. It greatly hurts the searchability of your post. \$\endgroup\$ – FryAmTheEggman Aug 20 '16 at 22:03
  • \$\begingroup\$ Your code is also stylized. Does your code run properly? \$\endgroup\$ – Buffer Over Read Aug 20 '16 at 22:34
  • \$\begingroup\$ @ColdGolf And do you think I'd stylize my post by hand? \$\endgroup\$ – gaazkam Aug 21 '16 at 2:13
  • \$\begingroup\$ @FryAmTheEggman OK, thank you. I now see my challenge was pointless and won't post it to the main. \$\endgroup\$ – gaazkam Aug 21 '16 at 2:14
  • \$\begingroup\$ Nothing is pointless: now you you know more and can come up with a better challenge! :) \$\endgroup\$ – FryAmTheEggman Aug 21 '16 at 2:17
  • \$\begingroup\$ @ColdGolf OK you were right, I messed up the stylization. {'b', 'и'} - here is a bug. Sorry. \$\endgroup\$ – gaazkam Aug 21 '16 at 2:22
  • \$\begingroup\$ @gaazkam Does your code, with the stylized цsiпg Sчstem;, run properly? \$\endgroup\$ – Buffer Over Read Aug 21 '16 at 2:39
  • \$\begingroup\$ @ColdGolf I regard people of CodeGolf intelligent enough to find out they'd have to unstylize this code ^^ :) \$\endgroup\$ – gaazkam Aug 22 '16 at 7:11
  • \$\begingroup\$ @gaazkam I see. \$\endgroup\$ – Buffer Over Read Aug 22 '16 at 17:34
-2
\$\begingroup\$

Enterprise Quality Code!

Summary of this challenge

Print (to make it more fair when competing with another language changing the output method could be a trivial way to golf) the first N Prime numbers. Your score will be the sum of the byte counts of all entries which no one has been able to golf down (by removing one or more characters and rearrange the program). If you golf down someones program, post it as another submission.

You may not golf your own programs once submitted.


This is not a dupe because it significantly changes the scoring method. Writing code which allows a single byte to be golfed off will cost the whole of the score. Also as this is a challenge the winner is likely going to have high scores across a multitude of languages. It is likely that scores will be incredibly near 30k for each language. This limit allows a more interesting competition as it prevents submissions of exponentially large lengths.

Back-story and explanation

At Pretty Good consultants there is a focus on writing "quality" verbose code that is sufficiently engineered. Your boss has decided to test you on your skills.


Consider the set of all programming languages in existence before the posting of this challenge. For this challenge there will technically be one individual "winner" in each language, however the boss will give a promotion accepted tick mark to only one answer based on your score.
The goal of this challenge is to receive an integer N strictly smaller than 2^16-1 and print the first N prime numbers (in less than 24 hours) separated by your platforms choice of new line. OEIS sequence A000040 in as many bytes as possible in as many languages as possible. However, note that others vying for the promotion will try to "help" you by golfing down your score.

Sample output for an input 11

2
3
5
7
11
13
17
19
23
29
31

How to participate

Pick any language X, but please avoid selecting a language which is just another version or derivative of another answer. If there is no existing answer in language X than you will write a program (which must fit into a single post) that solves this challenge. The length in bytes of the source (in any reasonable preexisting textual encoding) will be added to your score. You must avoid using any unnecessary characters for reasons that will soon become apparent.

If language X already has been used to answer this question, then you must answer using any permutation of any proper subset of the characters used in the shortest answer (I.E take the shortest X answer and remove some (>=1) characters and optionally rearrange the resulting code). The previous holder of the shortest X answer will lose all of the bytes provided by his answer from his score, and the number of bytes of your submission will now be added to your score. The number of bytes golfed off gets "lost" forever.


Clarifications shamelessly lifted adapted from this challenge

Rules for Languages

Languages used should be distinctly different. A language is different iff:

  • It is not a different version of another language (Java 7, Java 8)
  • They must not be derived from another language (Branf*** versus Alphf***)
  • One language may not be a subset or superset or trivial of the other one (e.g. hq9+ versus hq9+b).

HQ9+ wouldnt be a language anyway, but please be judicious when selecting a language, if you have any clarifications on a language that may be significantly different from an existing answer please ping me and we can work it out.


\$\endgroup\$
  • \$\begingroup\$ If anyone knows how to make a scoreboard for this I will be much obliged \$\endgroup\$ – Rohan Jhunjhunwala Aug 20 '16 at 17:28
  • \$\begingroup\$ So the highest score wins, overall (from all your still-valid answers). And when you outgolf somebody, they lose their points, you gain your points, but do you get the points that they lost? \$\endgroup\$ – Rɪᴋᴇʀ Aug 20 '16 at 17:42
  • \$\begingroup\$ @EasterlyIrk the way I had it planned out is that the amount of bytes golfed off is forever lost. I don't know if thats fair but that essentially prevents people from "profiting" off of ridiculous answers that were not fortified against being golfed. \$\endgroup\$ – Rohan Jhunjhunwala Aug 20 '16 at 17:49
  • 2
    \$\begingroup\$ Yeah, that's what I figured. You might want to clarify that a bit though. I really like the idea. \$\endgroup\$ – Rɪᴋᴇʀ Aug 20 '16 at 17:52
  • \$\begingroup\$ @EasterlyIrk clarifications added, let me know if this is ready for main \$\endgroup\$ – Rohan Jhunjhunwala Aug 20 '16 at 17:59
  • 2
    \$\begingroup\$ It might be ready, but you should wait for somebody else to also give input. \$\endgroup\$ – Rɪᴋᴇʀ Aug 20 '16 at 18:01
  • \$\begingroup\$ All right sounds good \$\endgroup\$ – Rohan Jhunjhunwala Aug 20 '16 at 18:04
  • 2
    \$\begingroup\$ 1. So basically the accepted answer goes to the shortest answer in Unary? 2. The tags code-golf and code-bowling are mutually exclusive. This isn't really either. \$\endgroup\$ – Peter Taylor Aug 20 '16 at 19:49
  • \$\begingroup\$ @PeterTaylor please read the whole thing. The answer must fit within 30k \$\endgroup\$ – Rohan Jhunjhunwala Aug 20 '16 at 20:02
  • \$\begingroup\$ If someone can write a brainf*** program that is only about 6 chars long or so than they deserve the accept tick \$\endgroup\$ – Rohan Jhunjhunwala Aug 20 '16 at 20:03
  • \$\begingroup\$ @RohanJhunjhunwala Golunar wins \$\endgroup\$ – Rɪᴋᴇʀ Aug 20 '16 at 22:07
  • \$\begingroup\$ @EasterlyIrk lol thats actually just a compressed form of Brainf*** it probably wouldn't score that well \$\endgroup\$ – Rohan Jhunjhunwala Aug 20 '16 at 23:15
  • \$\begingroup\$ @PeterTaylor essentially I restrict answers to fit in one post which means the best score for a single language is slightly under 30 characters \$\endgroup\$ – Rohan Jhunjhunwala Aug 20 '16 at 23:15
  • 2
    \$\begingroup\$ I find the intro confusing. I didn't understand what the challenge is broadly about until reading to the end. Can you cleanly state the challenge at the beginning, and move the details later? \$\endgroup\$ – xnor Aug 21 '16 at 0:42
  • 1
    \$\begingroup\$ @trichoplax the overall winner with the highest score summed up over all of their answer posts will receive the tick on their highest scored post. It doesn't really matter which post in particular (as long as it is a post of the winner) receives the tick, but it makes sense to tick off the highest scoring post. \$\endgroup\$ – Rohan Jhunjhunwala Aug 21 '16 at 12:44

You must log in to answer this question.

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