As I'm applying for some jobs whose job advert doesn't state the salary, I imagined a particularly evil interviewer that would give the candidate the possibility to decide their own salary ...by "golfing" it!

So it goes simply like that:

Without using numbers, write a code that outputs the annual salary you'd like to be offered.

However, being able to write concise code is a cornerstone of this company. So they have implemented a very tight seniority ladder where

employers that write code that is b bytes long can earn a maximum of ($1'000'000) · b-0.75.

we are looking at (these are the integer parts, just for display reasons):

   1 byte  → $1'000'000       15 bytes → $131'199
   2 bytes →   $594'603       20 bytes → $105'737
   3 bytes →   $438'691       30 bytes →  $78'011
   4 bytes →   $353'553       40 bytes →  $62'871
  10 bytes →   $177'827       50 bytes →  $53'182

The challenge

Write a program or function that takes no input and outputs a text containing a dollar sign ($, U+0024) and a decimal representation of a number (integer or real).

  • Your code cannot contain the characters 0123456789.

In the output:

  • There may optionally be a single space between the dollar sign and the number.

  • Trailing and leading white spaces and new lines are acceptable, but any other output is forbidden.

  • The number must be expressed as a decimal number using only the characters 0123456789.. This excludes the use of scientific notation.

  • Any number of decimal places are allowed.

An entry is valid if the value it outputs is not greater than ($1'000'000) · b-0.75, where b is the byte length of the source code.

Example output (the quotes should not be output)

"$ 428000"            good if code is not longer than 3 bytes
"$321023.32"          good if code is not longer than 4 bytes
"  $ 22155.0"         good if code is not longer than 160 bytes
"$ 92367.15 \n"       good if code is not longer than 23 bytes
"300000 $"            bad
" lorem $ 550612.89"  bad
"£109824"             bad
"$ -273256.21"        bad
"$2.448E5"            bad

The score

The value you output is your score! (Highest salary wins, of course.)


Leaderboard

Here is a Stack Snippet to generate both a regular leaderboard and an overview of winners by language.

To make sure that your answer shows up, please start your answer with a headline, using the following Markdown template:

# Language Name, $X (Y bytes)

where X is your salary and Y is the size of your submission. (The Y bytes can be anywhere in your answer.) If you improve your score, you can keep old scores in the headline, by striking them through. For instance:

# Ruby, <s>$111111.111... (18 bytes)</s> <s>$111999 (17 bytes)</s> $123456 (16 bytes)

You can also make the language name a link, which will then show up in the leaderboard snippet:

# [><>](http://esolangs.org/wiki/Fish), $126,126 (13 bytes)

var QUESTION_ID=171168,OVERRIDE_USER=77736;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body.replace(/<(s|strike)>.*?<\/\1>/g,"");s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a1=r.match(SCORE_REG),a2=r.match(LANG_REG),a3=r.match(BYTES_REG);a1&&a2&&e.push({user:getAuthorName(s),size:a3?+a3[1]:0,score:+a1[1].replace(/[^\d.]/g,""),lang:a2[1],rawlang:(/<a/.test(a2[1])?jQuery(a2[1]).text():a2[1]).toLowerCase(),link:s.share_link})}),e.sort(function(e,s){var r=e.score,a=s.score;return a-r});var s={},r=1,a=null,n=1;e.forEach(function(e){e.score!=a&&(n=r),a=e.score,++r;var t=jQuery("#answer-template").html();t=t.replace("{{PLACE}}",n+".").replace("{{NAME}}",e.user).replace("{{LANGUAGE}}",e.lang).replace("{{SCORE}}","$"+e.score.toFixed(2)).replace("{{SIZE}}",e.size||"?").replace("{{LINK}}",e.link),t=jQuery(t),jQuery("#answers").append(t);s[e.rawlang]=s[e.rawlang]||e});var t=[];for(var o in s)s.hasOwnProperty(o)&&t.push(s[o]);t.sort(function(e,s){var r=e.rawlang,a=s.rawlang;return r>a?1:r<a?-1:0});for(var c=0;c<t.length;++c){var i=jQuery("#language-template").html(),o=t[c];i=i.replace("{{LANGUAGE}}",o.lang).replace("{{NAME}}",o.user).replace("{{SCORE}}","$"+o.score.toFixed(2)).replace("{{SIZE}}",o.size||"?").replace("{{LINK}}",o.link),i=jQuery(i),jQuery("#languages").append(i)}}var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe",COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk",answers=[],answers_hash,answer_ids,answer_page=1,more_answers=!0,comment_page;getAnswers();var LANG_REG=/<h\d>\s*((?:[^\n,](?!\s*\(?\d+\s*bytes))*[^\s,:-])/,BYTES_REG=/(\d+)\s*(?:<a[^>]+>|<\/a>)?\s*bytes/i,SCORE_REG=/\$\s*([\d',]+\.?\d*)/,OVERRIDE_REG=/^Override\s*header:\s*/i;
body{text-align:left!important}#answer-list,#language-list{padding:10px;width:520px;float:left}table thead{font-weight:700}table td{padding:5px}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/codegolf/all.css?v=83c949450c8b"> <div id="answer-list"> <h2>Leaderboard</h2> <table class="answer-list"> <thead> <tr><td></td><td>Author</td><td>Language</td><td>Score</td><td>Size</td></tr></thead> <tbody id="answers"> </tbody> </table> </div><div id="language-list"> <h2>Winners by Language</h2> <table class="language-list"> <thead> <tr><td>Language</td><td>User</td><td>Score</td><td>Size</td></tr></thead> <tbody id="languages"> </tbody> </table> </div><table style="display: none"> <tbody id="answer-template"> <tr><td>{{PLACE}}</td><td>{{NAME}}</td><td>{{LANGUAGE}}</td><td>{{SCORE}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr></tbody> </table> <table style="display: none"> <tbody id="language-template"> <tr><td>{{LANGUAGE}}</td><td>{{NAME}}</td><td>{{SCORE}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr></tbody> </table>


Edit: (rounded) maximum allowed score per byte count, for a quicker reference - text here:

enter image description here

  • 48
    This is one of the very few (imo) successful non-fixed-output no-input non-random challenge. Unique idea! – Mr. Xcoder Aug 26 at 0:45
  • would $ 119 126 be valid output? – ovs Aug 26 at 15:52
  • 2
    Nice challenge! Can we output a fully formatted currency value, if desired? Like $80,662.67 instead of $80662.6659? Your rules seems to preclude the comma, which means I couldn't use any built-in currency functions. – BradC Aug 27 at 19:07
  • 6
    I hope you don't mind, I've added a variation of the Leaderboard Snippet that sorts by score instead of bytes. Excellent first challenge! – ETHproductions Aug 27 at 19:27
  • 9
    Just noticed the new contributor tag. Well-constructed challenge, with such a high upvote and a vast amount of answers in only a few days, I wonder if this could be eligible for this years' Rookie of The Year ;) – Shieru Asakoto Aug 28 at 11:21

90 Answers 90

bash, $127127

x;echo \$$?$?

Try it online!

Since the x command doesn't exist, it errors and sets the exit code to 127.

Then, the code outputs a dollar sign followed by $? twice. The $? variable stores the exit code of the previous command, so this outputs $127127 in 13 bytes.

  • 42
    Funnily enough if you're on Mac and you have XQuartz installed, this won't work because x does exist. As a bonus, it crashed when trying to open it, so I got $11 instead! – numbermaniac Aug 28 at 7:53
  • 10
    Use ] instead of x, the former is less likely to exist. – pts Aug 28 at 22:30

Java 8, $131,199.00 (15 bytes)

v->"$"+'e'*'ԓ'

Try it online.

Explanation:

v->            // Method with empty unused parameter and String return-type
  "$"+         //  Return a dollar sign, concatted with:
      'e'*'ԓ'  //  131199 (101 * 1299)

\$131,199.00 < 131,199.31\$

I used a program to generate a printable ASCII character in the range [32, 126] which, when dividing 131199, would have the lowest amount of decimal values. Since 101 can divide 131199 evenly, resulting in 1299, I'm only 31 cents short of my maximum possible salary based on my byte-count of 15.

  • 10
    Dang, impressively efficient score! – ETHproductions Aug 27 at 19:38

CJam, 5 bytes, $262'144

'$YI#

Try it online!

How it works

'$     Push '$'.
  Y    Push 2.
   I   Push 18.
    #  Pop 2 and 18 and perform exponentiation, pushing 262144.

CJam, (5 bytes) $294204.018...

'$PB#

Try it online!

Explanation:

I derived it from Dennis' answer, but looked for combinations of numbers which would yield a higher result. I almost gave up, but I saw that P is the variable for \$\pi\$, and that \$\pi^{11} \approx 294000\$. The letter B has a value of 11 in CJam, giving the code above.

  • 6
    Since your score is your salary, you should mention it in the header. This answer is currently winning. :) – Dennis Aug 27 at 13:31

R, 20 bytes, $103540.9

T=pi+pi;cat("$",T^T)

Try it online!

The max for 20 bytes is $105737.1, so this is quite close to the salary cap!

This would be a nice raise, and if I get paid to do code golf......

  • 2
    might be a way to combine pi with a dataset's sum... would require a programmatic approach to evaluate various combination of operators/datasets/pi to get as close to the max as possible. No time for this now but it sounds like a nice challenge in itself. – JayCe Aug 25 at 15:37

GS2, (5 bytes) $292,929

•$☺↔A

A full program (shown here using code-page 437). (Maximum achievable salary @ 5 bytes is $299069.75)

Try it online!

Builds upon Dennis's GS2 answer...

•$☺↔A                             []
•$    - push '$'                  ['$']
  ☺   - push unsigned byte:
   ↔  -   0x1d = 29               ['$',29]
    A - push top of stack twice   ['$',29,29,29]
      - implicit print            $292929
  • 1
    That's 11 bytes, even if it is 5 characters. – dotancohen Aug 26 at 8:38
  • 3
    @dotancohen: 0x0724011d41 is 5 bytes by my count... – eggyal Aug 26 at 9:39
  • 2
    @eggyal: I missed the bit about code-page 437. Nice touch! – dotancohen Aug 26 at 10:26
  • 2
    Dear down-voter, could I have some feedback please; I don't see what is incorrect, not useful, or unclear. – Jonathan Allan Aug 26 at 15:10

JavaScript (ES6), 19 bytes, $109,839

_=>atob`JDEwOTgzOQ`

Try it online!

\$109839\$ is the highest integer \$\le 109884\$ which does not produce any digit when prefixed with '$' and encoded in base64.


Without atob() (Node.js), 26 bytes, $86,126

_=>'$'+Buffer('V~').join``

Try it online!

The concatenation of '$' with the ASCII codes of 'V' (86) and '~' (126).

  • Wow Buffer. First time ever to acknowledge this class ;') – Shieru Asakoto Aug 29 at 1:04
  • 1
    @user71546 It could be done in 24 bytes for $91,126 if thousand separators were allowed. But apparently, they're not... :( – Arnauld Aug 29 at 5:47
  • Buffer constructor is deprecated, so that will get longer in future versions – mcfedr Aug 30 at 11:35
  • @mcfedr We don't care for code golf, as long as a working version of the interpreter is properly specified. – Riking Aug 31 at 3:33

R, 21 bytes $99649.9

cat("$",min(lynx^pi))

Try it online!

A different R approach - see also Giuseppe's answer

Very close to the maximum of $101937 for this bytecount.

Bonus: object.size()

R, 24 bytes $89096

cat("$",object.size(ls))

Try it online!

This is probably system-dependent, but when I ra this on TIO I got $89096 - close to the limit of 92223 for 24 bytes.

  • neat! I thought about trying to pick a good dataset but I can't figure out where to look to find them...I guess the datasets package makes a lot of sense. – Giuseppe Aug 25 at 15:23
  • @Giuseppe I'm just trying prod and sum randomly... but prod increases too fast ! – JayCe Aug 25 at 15:24
  • sum(volcano) is 690907 but that would have to be about 1 byte to work, haha – Giuseppe Aug 25 at 15:30
  • Great idea using datasets ! – digEmAll Aug 25 at 15:32
  • @Giuseppe good catch I had completely overlooked that! duh. – JayCe Aug 25 at 15:41

Self-modifying Brainfuck, 16 bytes, $124444

<.<++.+.++..../$

Try it online!

  • 1
    You didn't end up using the :, so you can remove it and add another + for $124444. – Nitrodon Aug 26 at 1:36
  • @Nitrodon Ah right, thanks. – user202729 Aug 26 at 4:29
  • After printing the 1, why not count to 3 and then print only 3s? You would save a byte and print a higher number. – 12431234123412341234123 Aug 27 at 19:51
  • @12431234123412341234123 You'd need to save two bytes. Otherwise, with 15 bytes, you're only allowed up to $131199, $133333 is too much. – hvd Aug 28 at 11:24

PHP, $131116 (8 bytes)

Didn't see one for php and wanted to throw one up. I know someplace in php is a bad typecast that would cut this in half but I can't find it right now.

$<?=ERA;

This just takes advantage of PHP short tags and the PHP built in constants.

Try it online!

  • Ha I’ll switch it out for something else tomorrow – mschuett Aug 27 at 8:21
  • 4
    Instead of <?="$"., just do $<?= and save a few bytes. – Ismael Miguel Aug 27 at 10:23
  • 2
    @IsmaelMiguel nice thanks! Got it down to 8 bytes but didn't take long enough to figure out how to get the other ~70k of my salary. – mschuett Aug 27 at 14:25
  • 1
    wow didnt knew about this constant, but I couldnt find in docs, can any one help on this? – Rafee Aug 29 at 9:28
  • 2
    @Rafee it's actually not documented any place that I can find. It's a language constant that was added 17 years ago github.com/php/php-src/commit/…. I found it by dumping all available constants and then just starting to grep for the shortest ones. It seems to be provided by the OS seen here gnu.org/software/libc/manual/pdf/libc.pdf on page 195. – mschuett Aug 29 at 14:50

GS2, 5 bytes, $291'000

•$☺↔∟

This is a CP437 representation of the binary source code.

Try it online!

How it works

•$     Push '$'.
  ☺↔   Push 29.
    ∟  Push 1000.

Excel 19 bytes $107899.616068361

="$"&CODE("(")^PI()

Explanation:

     CODE("(")        // find ASCII code of ( which is 40
              ^PI()   // raise to power of Pi  (40^3.141592654)
 "$"&                 // append $ to the front of it
=                     // set it to the cell value and display
  • 2
    Welcome to PPCG! – Luis felipe De jesus Munoz Aug 27 at 14:53
  • 5
    +1 Even better, they'll be impressed with your Excel skills and want you to be an account manager. – theREALyumdub Aug 27 at 17:25
  • 2
    @theREALyumdub is that supposed to be a good thing? I'm not sure I'd take this salary if it means I have to work with Excel on the daily ;) – Aaron Aug 28 at 16:04
  • I'd argue with Excel's accounting formatting, that you can skip the $ entirely, and simply set the formatting to accounting. – Selkie Aug 29 at 20:10
  • @Selkie Accounting format adds a comma, which is disallowed. You could use a custom format of $# though. I wouldn't be sure if I should count this as 15 characters with =CODE("*")^PI() for $125773, or 17 characters (adding 2 for the the format letters) with =CODE(")")^PI() for $116603, or if this is disallowed. – Keeta Aug 30 at 13:01

vim, $99999 $110000 $120000

i$=&pvh*&ur

Try it online!

Uses the expression register (note that there is a <C-r> character, which is invisible in most fonts, between the $ and =, for a total of 13 bytes) to insert the value of the 'pvh' option times the value of the 'ur' option.

'previewheight' is the option that controls the height of preview windows, which is 12 by default.

'undoreload' is the maximum number of lines a buffer can have before vim gives up on storing it in memory for undo, and it defaults to 10,000.

C#

Full program, 72 bytes, $40448 66 bytes, $43008

class P{static void Main()=>System.Console.Write("$"+('T'<<'i'));}

Try it online!

Explanation

Left-shift operator treats chars 'T' and 'i' as integers 84 and 105 respectively and performs shift

Lambda, 19 bytes, $109568 17 bytes, $118784

o=>"$"+('t'<<'j')

Try it online!

Edit Thanks to @LegionMammal978 and @Kevin for saving 2 bytes

  • 5
    Just curious, why do you include a semicolon on the end of your lambda? – LegionMammal978 Aug 26 at 22:27
  • 1
    In addition to what @LegionMammal978 mentioned (trailing semi-colons doesn't have to be counted in the byte-count for Java/C# lambdas), by taking an unused empty parameter you can golf the ()=> to o=> for an additional -1 byte. – Kevin Cruijssen Aug 28 at 7:38
  • 2
    Indeed, with both @Kevin's and my advice, the lambda can be golfed to o=>"$"+('t'<<'j') with $118784. – LegionMammal978 Aug 28 at 10:30
  • @Kevin I didn't know about this, thanks for the info. – pmysl Aug 28 at 14:23
  • @LegionMammal978 Thanks for pointing out unnecessary semicolon and for providing updated lambda. I must have overlooked this semicolon somehow – pmysl Aug 28 at 17:20

Jelly,  $256000 $256256  (6 bytes) $257256

⁹‘”$;;

A full program. (Maximum achievable salary @ 6 bytes is $260847.43)

Try it online!

How?

⁹‘”$;; - Main Link: no arguments
⁹      - Literal 256                            256
 ‘     - increment                              257
  ”$   - single '$' character                   '$'
    ;  - concatenate                            ['$',257]
     ; - concatenate                            ['$',257,256]
       - implicit print                      -> $257256

Previous...

5 bytes $256256

”$;⁹⁺

('$' concatenate 256, repeat 256 - causing interim implicit printing)

6 bytes $256000:

⁹×ȷṭ”$

(256 × 1000 ṭack '$')

brainfuck, 43 bytes, $58888

++++++[>++++++<-]>.<++++[>++++<-]>+.+++....

Try it online!

How it works

++++++[>++++++<-]>.  write 36 to cell one and print (36 is ASCII for $)

<++++[>++++<-]>+.    add 17 to cell 1 and print (cell 1 is now 53, ASCII for 5) 

+++....              add 3 to cell 1 and print 4 times (cell 1 is now 56, ASCII for 8)
  • 1
    Welcome to PPCG! Hope you stick around – Jo King Aug 28 at 23:33

Gol><>, $207680 in 8 bytes

'o**n; $

Try it online!

How it works:

'        Start string interpretation. Pushes the ASCII value of every character until it wraps back around to this character
 o       Output the top stack value as ASCII. This is the $ at the end of the code
  **     Multiply the top 3 stack values (This is the ASCII of 'n; ', 110*59*32
    n    Output top of stack as integer.
     ;   Terminate program
       $ (Not run, used for printing the $)

Interestingly enough, you can use h instead of n;, which yields 'o**h5$ with a score of $231504, but you can't use 0-9, and there isn't another 1-byte way to push 53, the ASCII value of 5

  • 1
    Welcome to PPCG! – Mego Aug 28 at 0:56

PHP, 13 Bytes, $144000 Salary

Unfortunately for this job, moving to Mauritius is required (well, I could move slightly less far eastward, however every timezone less would yield at $36k drop in salary.) To compensate for the inconvenience, my salary increases by $1 every leap year.

$<?=date(ZL);

This just puts out Z the timezone in seconds and appends whether or not it's a leap year.

Jelly, 8 bytes, $210176.48625619375

⁽½"×½”$,

3535 (⁽½") multipli(×)ed by its sqrt (½).

Try it online!

Python 3, (22 bytes) $ 98,442

print('$',ord('𘂊'))

Try it online!

Much like Doorknob's Ruby answer, the 4 byte Unicode character used here, 𘂊, has an ordinal value of the maximal integer salary achievable in 22 bytes.

Note that print() prints its unnamed arguments separated by spaces by default (sep is an optional named argument).

  • you can do slightly better than that using f strings: print(f"${ord('𘫿')}") is 21 bytes and outputs $101119 – Matt Aug 28 at 14:33
  • 2
    @Matt that is 24 bytes (I thought of f-string but realised that the extra braces would cost 2 bytes) – Jonathan Allan Aug 28 at 15:39

Mathematica, 18 bytes, $107,163.49

$~Print~N[E^(E!E)]

Full program; run using MathematicaScipt -script. Outputs $107163.4882807548 followed by a trailing newline. I have verified that this is the highest-scoring solution of the form $~Print~N[expr] where expr is comprised of Pi, E, I, and +-* /()!.

  • What about I? – user202729 Aug 26 at 4:40
  • @user202729 Nope, doesn't help; any number that actually uses I and not just I I or I/I will generally have a + 0.*I tacked onto its N. – LegionMammal978 Aug 26 at 10:22
  • Very nice! I had gotten as far as "$"~Print~Exp[E!N@E] (which is the same length as "$"~Print~N[E^(E!E)]), but with the quotation marks around $, the output was just barely over the limit. – Misha Lavrov Aug 26 at 14:37
  • What I came up with was Print[$,N[Pi^(Pi*Pi)]], giving $80662.7. I tried various combinations of Pi, E, +, *, ^ (thought about I but didn't see any effective way to use it), but it never occurred to me to try !. – Meni Rosenfeld Aug 30 at 1:00

JavaScript (Node.js), 23 bytes, $65535

_=>"$"+ +(~~[]+`xFFFF`)

Try it online!

This is the best I can get without atob, though there is a large improvement space tbh

You know, having no short character to ascii conversion function sucks A LOT.

AFTER A WHOLE DAY

JavaScript (Node.js), 30 bytes, $78011

_=>"$"+`𓂻`.codePointAt(![])

Try it online!

or: 29 bytes, $80020

_=>"$"+`򀀠`.codePointAt(!_)

Where 򀀠 is U+13894 INVALID CHARACTER

Oh String.codePointAt! I've just completely forgotten this!

A joke one (15B, $130000), not vaild at all but just for fun

_=>"$十三萬"
  • So, why not _=>"$⑮萬" ^_^ – tsh Aug 26 at 7:36
  • 2
    I'm laughing right now because I can understand the Chinese... – ericw31415 Aug 30 at 21:23

MATLAB, 17 bytes, $112222

['$','..////'+pi]

Old answer:

['$','RRUUTR'-'!']
  • 1
    nice one to use the automatic conversion of the ascii code thanks to the +pi – Hoki Aug 30 at 10:05
  • What about e instead of pi? – Stewie Griffin Sep 13 at 13:02

Ruby, $119443

$><<?$<<?𝊓.ord

Try it online!

The maximum integer output for 17 bytes. The Unicode character is U+1D293, which is 119443 in hex.

  • If you want to take a chance, try the 10 byte $><<?$<<$$ on a long-running system. Answers up to 177827 are valid. – AShelly Sep 1 at 0:48
  • I think you mean "in decimal," or at least there's some ambiguity. – jpmc26 Sep 1 at 2:08

Japt, 5 bytes, $262144

'$+I³

Test it


Explanation I is the Japt constant for 64, ³ cubes it and then '$+ concatenates that with the dollar symbol.

05AB1E (5 bytes), $262626

'$₂ÐJ

Try it online!

\$262626 < 299069\$. Pushes the character $ to the stack, then pushes the integer \$26\$. From here, the program triplicates the integer, leaving the stack as ["$", 26, 26, 26] and joins (J) the stack.

Befunge-98 (PyFunge), 8 bytes, $209728

$",**.q:

Try it online!

The character : has been computed using the following method:

>>> chr(int((1_000_000 * 8 ** -0.75) / (ord(' ') * ord('q'))))
':'

Using @ and f also works but gives only $208896.

Befunge-93, 9 bytes, $192448

a>$",**.@

Try it online!

Outputs $192448, just two dollars and nine cents short of the maximum. This even works as a polyglot with proper implementations of Befunge-98, where it doesn't even have to throw up an unrecognised instruction error!

Explanation:

a>$        Basically no-ops
   "       Wrapping string that pushes the code and a lot of spaces to the stack
    ,      Print the $
     **    Multiply the byte values of a, > and a space
           62*97*32 = 192448
       .@  Print the number and terminate

dc, $169169 10 bytes

Dd*d[$]nnn

Try it online!

This prints 13 (D) squared, twice

Cubix, $155088 (12 bytes)

*Ouo'ე'$/@

Try it online!

An interesting problem, was hoping to get this down to 7 or 8 bytes, but it proved difficult. Pushes the ე and $ characters to the stack, outputs the $, multiples top of stack, outputs the number and halts. Still hoping to find a lower byte option

protected by Community Sep 7 at 0:00

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.