Skip to main content
We’ve updated our Terms of Service. A new AI Addendum clarifies how Stack Overflow utilizes AI interactions.
Code Golf

Return to Revisions

15 of 18
added 117 characters in body
J.Doe
  • 2.7k
  • 12
  • 15

R, (削除) 301 (削除ここまで) (削除) 289 (削除ここまで) 287 bytes

Explanation.

Look up the index of the mass sorted atomic number in a UTF8 encoded hash string s. The hash is taken by multiplying the vector c(5,407) by the ASCII byte number of the characters of the element name, taking the sum, and taking that mod 428. The hash was selected by a brute force search to minimize bytecount and is itself encoded as UTF8. The operator + is used for the UTF8 to integer vector conversion.

Encode the masses of the elements as a UTF8 encoded string of differences, packing 2 differences into each byte as 9*d1 + d2 where d1 is the difference of the nth element and d2 is the successive mass difference of the n+50th element. Then to retrieve the mass, take the corresponding position at the cumulative sum of the differences. This is shorter than a quadratic formula.

function(x)sum(c(o%%9,o%/%9)[1:match(sum(+"Ɨ"*+x)%%428,+"×ばつűŅĘŶ2Ly@¡ĠÄ,Â5]ŮĮŷÃõEt<7Ţ’ûĊƋJů©[ďc?Ŧ_l·xohőĤ6ĉÑð`UƂKŸ2аSoßōFÉ")])
"+"=utf8ToInt
o=+"0%..%$%% 
p

&00(1"

Try it online!

J.Doe
  • 2.7k
  • 12
  • 15

AltStyle によって変換されたページ (->オリジナル) /