The emoji problem (2022)

252 mtsolitary 38 5/20/2025, 10:18:15 AM artofproblemsolving.com ↗

Comments (38)

amenghra · 4h ago
There is a great quora answer for this one: https://www.quora.com/How-do-you-find-the-positive-integer-s...
fsckboy · 53m ago
>quora answer for this one

that quora article is written by Alon Amit and fwiw, TFA quotes Alon Amit, so his thoughts are ex post.

stronglikedan · 2h ago
now that's peak Quora right there!
behnamoh · 1h ago
I really miss those years when Quora was a decent place. it went downhill when they decided to aggressively monetize it.

the same happened to poe.

No comments yet

kurthr · 1h ago
Yeah, yeah, they just mumble mumble diophantine mumble mumble elliptic curve mumble mumble Weierstrass form mumble mumble like your boring old uncle at Christmas. GET TO THE ANSWER!

   154476802108746166441951315019919837485664325669565431700026634898253202035277999
   36875131794129999827197811565225474825492979968971970996283137471637224634055579
   4373612677928697257861252602371390152816537558161613618621437993378423467772036
adzm · 3h ago
On a related tangent, when I was teaching my younger kids about math and helping with homework, I would often rewrite things as a formula, or rewrite the formula itself once they got to that point. However instead of things like x I would use things like fluffy cloud, star, etc. They thought it was annoying but it still kept them interested and have said they've done the same when helping their peers. It's easy to forget what it was like learning these abstractions, and it was important to show that x was nothing special, it could be a sun, it could be the phrase "total number of kittens"
jsheard · 4h ago
> A guy by the name of Sridhar Ramesh

Sridhar is a pro follow, you don't see many people with PhDs in both math and shitposting.

OisinMoran · 5h ago
I love this genre! I've started calling it “Dantzig Sniping” and here’s my own one: https://x.com/TheOisinMoran/status/1298305686082744320

Some more context and related ones here: https://x.com/TheOisinMoran/status/1299124512240398336

przemub · 4h ago
I thought you named it for Gdańsk (Danzig) and was wondering what’s got sniped there :)
zahlman · 1h ago
How does one discover problems with this property?
rolandhvar · 11m ago
Dumb question, but how do you know it's smallest?
oytis · 6h ago
It's year 2025, why doesn't the author use actual fruit emoji for variable names?
aragonite · 2h ago
When trying to understand complex C codebase I've often found it helpful to rename existing variable as emojis. This makes it much easier to track which variables are used where & to take in the pure structure of the code at one glance. An example I posted previously: https://imgur.com/F27ZNfk

Unfortunately most modern languages like Rust and JS follow the XID_Start/XID_Continue recommendation (not very well-motivated imo) which excludes all emoji characters from identifiers.

unstuck3958 · 1h ago
wouldn't writing a parser of sorts that would replace emojis with a valid alphabetical string identifier be trivial?
aragonite · 23m ago
You're right that writing a preprocessor would be straightforward. But while you're actively editing the code, your dev experience will still be bad: the editor will flag emoji identifiers as syntax errors so mass renaming & autocompletion won't work properly. Last time I looked into this in VSCode I got TypeScript to stop complaining about syntax errors by patching the identifier validation with something like `if (code>127) return true` (if non-ascii, consider valid) in isUnicodeIdentifierStart/isUnicodeIdentifierPart [1]. But then you'd also need to patch the transpiler to JS, formatters like Prettier, and any other tools in your workflow that embeds their own version of TypeScript...

[1] https://github.com/microsoft/TypeScript/blob/81c951894e93bdc...

qingcharles · 36m ago
Here's Gemini's (brute force?) solution to the problem in C# using fruit emoji variables:

https://imgur.com/a/cC5QPH0

voidUpdate · 6h ago
While current year is 2025, the year the language was made in probably isnt
frollogaston · 39m ago
The early pages of the Swift docs show you can use emojis as variable names, and iirc that was the very first page in the Swift 1.0 handbook. I have a theory that the language design was originally motivated by emojis, because there were also interesting choices around strings, like originally having no ".length" method.
socalgal2 · 3h ago
Good or not, many languages choose not to support emoji, even newer ones.

The reasons are complicated but, many people prefer unicode normalization so that different forms of what appear to be the same word are considered the same word. People argue whether or not this is important but it can certainly be argued that it would be frustrating to get an error like

    let café = 1;
    café += 1;  // error, unknown identifier 'café'
The error happens in non-normalizing languages because those to idenifiers are not the same unicode.

But, choosing a normalization affects emoji as well. Worse, when new ones are added the normalization rules can change.

cout · 34m ago
I had an idea the other day to use 64-bit character codes. Then each code can be interpreted as an 8x8 bitmap. Every character would be guaranteed to have a unique bitmap representation. The bitmaps wouldn't bet used for rendering, of course -- but they could be used as a fallback if your font does not define a character. Anyway this would somewhat avoid the problem you describe because two characters that look the same visually would have the same value. Nothing I'll ever implement of course, just a thought experiment.
zahlman · 2h ago
The "srsltid" in the query parameters is unnecessary: https://artofproblemsolving.com/community/c2532359h2760821_t...
robinhouston · 2h ago
Using other constants in place of the ‘4’ can lead to some _really_ gigantic smallest solutions: https://observablehq.com/@robinhouston/a-remarkable-diophant...
ykonstant · 7h ago
I remember the problem when it first appeared, we had a good laugh at the number theory seminar :)

No comments yet

less_less · 6h ago
The theory of elliptic curves goes amazingly deep. Scratching the surface slightly more, to fill in the article's "ignore the labels like 2P":

Intersecting the curve with lines the way the author does is, perhaps shockingly, a commutative group operation, known as point addition. You define this operation by saying that the three points A,B,C on a line sum to zero: that is A+B+C=0 or in other words, A+B = -C. Reflecting across the curve's line of symmetry is negation (there's an alternative definition that extends to curves without reflection symmetry). Combining the two defines an operation A+B which adds two points on the curve and gives a third one: draw the line from A to B, intersect it with the curve to find a point -A-B (using the same type of formula given in this article) and then reflect it to get A+B. This addition operation obviously commutes (meaning, the line between A and B is the same as the line between B and A), but surprisingly it also associates and you get a group operation.

(For math olympiad nerds out there: so the union of a conic and a line is also a bivariate cubic equation. You can carry out the same "addition" operation there. Again the operation clearly commutes. But it also associates! This is basically Pascal's theorem.)

The theory of elliptic curves is also the basis of elliptic curve cryptography. In that case, instead of the curve being over the reals, all the calculations are done mod some prime p, which destroys structure based on continuity and prevents the numbers from becoming too large. There are a bunch of subtleties here but the key is that you can still straightforwardly compute addition in this context, with basically the same formulas. Then from addition you can get n*A, both for small integers n (eg 5*A = A+A+A+A+A) but also for large n (e.g. 2*A = A+A; 66*A = 2*2*2*2*2*2*A + 2*A). This "scalar multiplication" operation is a one-way operation for appropriately chosen curves: it's easy to calculate n*A from (n,A), but as far as we know it is hard to calculate n from (A,n*A) ... at least if you can't build a large quantum computer.

This gives you mix of easy operations (eg, addition and scalar multiplication) plus problems believed to be hard, which is a great starting point to build cryptography. There are a lot of important technical details, though fewer than with the new lattice schemes.

(Further comment on the olympiad thing: so you can do this with conic+line too, extending from addition to multiplication and using the same formulas mod p. But it's not as good: it's not hard to find a projection that sends the line to infinity and the conic to the unit circle or similar, and then the group operation becomes equivalent to multiplying the points' coordinates as complex numbers or similar. If the group operation is equivalent to multiplication, then scalarmul becomes equivalent to exponentiation, which ends up being in Fp or Fp^2 depending on some Legendre symbol or other. Exponentiation is still potentially secure: it's basically classical Diffie-Hellman. However, more attacks are known on exponentiation in Fp or Fp^2: the attacks don't outright break it but you need p to be much bigger.)

Edit: unescaped stars make italics.

gcanyon · 6h ago
Once upon a time I was good at math -- like, win state-wide competitions, get a scholarship good. It's sad that I can easily follow the path laid out here, but I am nowhere close to being able to lay out this course on my own.
dmurray · 6h ago
Nobody can do this on their own. You don't get to do this by having a great aptitude for high school maths and then being exposed to one or two more concepts that just intuitively click - which is enough to be competitive at the level you describe, though not enough to make the US Olympiad team.

You get the level of understanding necessary to create this blog post by already having worked through several textbooks and papers on number theory, elliptic curves, etc. So you don't do it on your own, you do it with help from Poincaré and Euler and Diophantes and whoever else.

Based on your description, you absolutely have the aptitude to do this if you pursued maths further academically. And also by having great teaching and explaining skills - that part might be harder to learn.

patapong · 4h ago
The picture says 95% are unable to solve this - I wonder what the correct percentage is. Closer to 99.999% I would guess, based on your explanation.
amenghra · 4h ago
Originally, more like 99.999995%
ysofunny · 6h ago
you seem to be missing this idea that mathematics must be doable alone, individually

this appears to be what sets mathematics appart from science? I mean, it's not like Euler, or Poincaré, and so on, are really there with you when "doing math"

point being, mathematics is not a team game. but everything else is??

gus_massa · 5h ago
When I'm teaching congruence or the Gauss method to solve equation systems, I tell my students: "You can solve the midterm alone or with the ghost of Gauss sit on the side chair."
jerf · 2h ago
I like that. "Standing on the shoulder of giants" is a fairly common way to phrase this, and it captures truth as well, but "on a team with the greatest mathematicians of history" is pretty fun too.

Pity I'm by far the weakest link in such team-ups. :)

mcphage · 6h ago
> point being, mathematics is not a team game. but everything else is??

Sorry, it’s early, and I can’t tell if you’re being sarcastic. I hope you are? Mathematics is very much a team game.

celticninja · 4h ago
i think based on the username they seem to be looking for validation through upvotes. Perhaps assuming this place is like a nerdier reddit.
ysofunny · 53m ago
actually, reddit is a mainstream hacker news

to me old.reddit.com will always be reddit.com

raverbashing · 6h ago
So the meme was a crap-post and never "supposed" to be solved anyway (in human terms?)
rdlw · 2h ago
I think the real joke is that the average Facebook user, with no higher math, might be tricked into trying to solve it, and independently rediscover methods for solving diophantine equations and elliptic curves, all so that they can prove that they're in the 3% by commenting what the strawberry equals.
raverbashing · 1h ago
Hah yeah. But probably more like 0.03% (no kidding)
yorwba · 6h ago
At least it was a problem with a known solution obtainable by a standard procedure in not too many steps. Could've also picked a deceptively simple Diophantine equation where it is unknown whether it even has any solutions or not: https://thehighergeometer.wordpress.com/2021/07/27/diophanti...