Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs
Community Proposals
Community Proposals
tag:snake search within a tag
answers:0 unanswered questions
user:xxxx search by author id
score:0.5 posts with 0.5+ score
"snake oil" exact phrase
votes:4 posts with 4+ votes
created:<1w created < 1 week ago
post_type:xxxx type of post
Search help
Notifications
Mark all as read See all your notifications »
Challenges

Post History

66%
+2 −0
Challenges 55 fruit salad: choose your own Kolmogorov complexity

Python 3, 319 318 bytes print('riBfig,barBbilBdewBmulBtayBabiu,bael,date,lime,lulo,neem,noni,pear,pili,plum,rimu,sloe,sorb,yuzu,bearBblueBcranBcrowBemu BhackBjuneBlimeBpineBraspBwineBwolfByew Back...

posted 1y ago by trichoplax‭  ·  edited 7mo ago by trichoplax‭

Answer
#3: Post edited by user avatar trichoplax‭ · 2023-09-25T22:39:11Z (7 months ago)
Move golfing credit to immediately after the code
  • # [Python 3], ~~319~~ 318 bytes
  • ```python
  • print('riBfig,barBbilBdewBmulBtayBabiu,bael,date,lime,lulo,neem,noni,pear,pili,plum,rimu,sloe,sorb,yuzu,bearBblueBcranBcrowBemu BhackBjuneBlimeBpineBraspBwineBwolfByew Backee,akebi,apple,araza,cacao,caqui,carob,etrog,gấc,grape,guava,ilama,jagua,kokum,kubal,lemon,mango,melon,mundu,musho,nance'.replace('B','berry,'))
  • ```
  • [Try it online!][TIO-lmzg5d4n]
  • This works by representing `berry,` (including the comma) as `B`. This means every fruit that ends in "berry" can effectively save 5 bytes. It turns out there are enough berries to make the 22 byte cost of `replace` worthwhile.
  • This is the 55 shortest fruits measuring length after substituting "berry," with "B". I generated the code using this code: [Try it online!][TIO-lmzftgr9]
  • ---
  • *1 byte saved thanks to [msb's comment](https://codegolf.codidact.com/comments/thread/8512#comment-21966) which made me realise I was sorting the fruit by string length (which measures characters instead of bytes, making fruits with diacritics seem shorter than they really are).*
  • ---
  • ## My initial failed attempts
  • Before I found this approach I tried shortening the other two Python 3 answers, but in both cases my misguided efforts only made the code longer...
  • ### Trying to shorten [steffan153's answer](https://codegolf.codidact.com/posts/287088/287094#answer-287094)
  • I noticed that some of the fruits had diacritics, which makes them longer in bytes than they appear, so instead of just using the 55 shortest fruit by characters, I used the 55 shortest fruit after throwing away any fruit with diacritics, like gấc and açaí. However, since we've already used up all of the fruit of length 5 bytes or less, each diacritic fruit removed brings in another 6 byte fruit, so the total length of the code went up by a byte:
  • ```python
  • print('fig abiu bael date lime lulo neem noni pear pili plum rimu sloe sorb yuzu ackee akebi apple araza cacao caqui carob etrog grape guava ilama jagua kokum kubal lemon mango melon mundu musho nance ooray peach pequi pluot prune pudau rowan rukam salak salal tapia terap tilap toyon wongi almond babaco bacuri banana bignay')
  • ```
  • [Try it online!][TIO-l8r3k4fp]
  • ### Trying to shorten [Moshi's answer](https://codegolf.codidact.com/posts/287088/287095#answer-287095)
  • I thought I could save some bytes by using fewer distinct characters in the list of fruits, since all of these need to be listed in the `while` loop that extracts the data. So I repeatedly found the letter present in fewest fruits, and discarded all fruits containing that letter, stopping short of ending up with fewer than 55 fruits remaining. This left me with only 14 distinct characters, down from 16 in the original code. However, the 2 bytes this saved were overwhelmed by the fact that the new list of 55 fruits contained longer fruits, since I'd discarded some of the shorter ones, leaving the code 14 bytes longer:
  • ```python
  • from base64 import*
  • n=int.from_bytes(b85decode('5YBr@2zdh)fdaH`|L?o31mzCMMOw^}6Gp}*cGPdkWp!!fj9sk(ll2zIiI9x(m!Z#)4FT|UW1Q!@&rHc#p7PfklqbhsG`5TO^jF^L@qmX-@zKRADY>W*()(`#6^w=;IP9xHTgMq6GED;7>E#S9WNiB|2eKZ!HJ!qD(`e}qPwt+~b^KgJISyhSv!lv?ba68XFLI3{>}kf^>gaG928Ym{URfadB71USJH9{@PJ;Ya'),'big')
  • while n:print(end="ambling poetry"[n%14]);n//=14
  • ```
  • [Try it online!][TIO-l8r46k1t]
  • ---
  • In hindsight I have no idea why I thought either of my initial approaches would work.
  • [Python 3]: https://docs.python.org/3/
  • [TIO-l8r3k4fp]: https://tio.run/##HZBBdsMwCESvMru0655oJFNHFRKqLJrnXN4h3XyG1R8Y57pb/7quMUtfH7fvsoOpOBJFsXEJtLSAq6GLNHTrBUM4MYpGUm@YpTkONcFhM@H0p4O5ioBVUgHH0MiTTyIz04K/XoLTEmRN27FPDsHu/COKshE/jA3VahiqJypUmnU09t3QRN/Z@@bB4x712LPAbPJ8F8z34NsSFW1hTO@C4Rsd0x7smF7ZcFBZ/6lYHIVYElWwokTQzrA8rO9xhYZ9i88kZouRfZYYoSVS2TvP2@d1vQA "Python 3 – Try It Online"
  • [TIO-l8r46k1t]: https://tio.run/##FdDZUoJQAADQd79CZEqwxQERJQYkU1nUJNFRbCJALouyw7ig9utUz@ftxOfcjcJWWdppFFRNIwMkUfWCOErzRiVkvDB//pdv85yDDDG7bQtsIwsg9bbaTzm8sFzUtgxBv056UQsLirfpdHbUbiQf3xpbXrb2qxiC7B2V7RHfxwvRE6kTEkAbGCVGi@tyhX1A3H0qbOG4I9t7PzHdjNfbi5m2G2kTLgnWT1wxnr8OVHbVQFBEh0ntyNCiTJ2EhTNNSH44oDvsEFao1bvXv@JgvIEECUoGiA5uiXzMH35MbexIonJ2lQPkH3qmQXbXo4nYurC3va2xjsFTeFcNLsu5bVj9DrZUJIG6cLJEq0YdfaybnlNHK0fX80E1fInTvxMEhBZTMwLT90KnGkcgT8@1z/AOI75QOmw2GYwoy18 "Python 3 – Try It Online"
  • [TIO-lmzftgr9]: https://tio.run/##hVpNjuS4sd7rFEJtqhvuHMAwBngYoDe@xnjQoCSmxBRFaviT2SrDR5iNT2DDePBqFg@zm23BeOfwScZfBH8kVTdgVEGMCElkMBiM@ILKdQuTNX/47TfRfmyfnp5Ep2IjXv8pXn9uRC@d1QLtRP9oZykbcR0nYdp@ks5t4JzqwXbCdqJrry6qUIXpmdY6YUa5S6MPwg0Xsa56l2pL8raTwlTZgvfsmfNByv0Bq3S7Cr28GXeV0LcRYxRe/RhVI2bZ4aqFn0nVaPqpS9prLcdJmq1ddVzALtYMubloKe5yoM5cIzC4CD4S8WJNOzqxQvelE05qMtEisx2kiGHLvVehhulaqQfp3txZxJbNUCRvp1Tkq3ReLVDsIGKdC@eg69eGILkTfs1iM0YtXOuluFzVCN5Yo3gKSQ@6tvnZFT3YUNo8XmLO1nFwG1pZe72Sh2T2ofTQFps6EVQfl0svxtd/2MQbCNrBYr5OkOSFrj2eOyrsFmlUMWKWebG0o9RxjC4xMxhaYq/S8kMc5GI3dBjghAFLdugSjuaEVl@47d32YrANJKKnpo9OoZEaF6VpuaTGAnTiZqMTba@CY1aL8Pp3arW1JhuvI@cwo6D7Bn@5qV0wswrvlTVp@CzbYt/T03kdO/LlZPpEku6P4z0fRyxoWj5I3LOvj9c@tK4PLLwZOwndNPaiw@bE2NKNYsEa573aqdEIvKh07iETbS/6EH02GKRqgdk7ZW6CGtdP8ItrWgGwQwkToFVHNlIhSFdH4X2RFWO6PJ6YohxzSyy6MJumyOS@son3YrUh93iQ791ZO7TQXGayahNli5jhaNGJPq8OSfxDygAbaHiIn5IMvjXG9HYezM4TnDlraLW6k6ctNpogFG2S3poY6M4DY2Gp7dJZchCLWKWpdfb2@gvazUuT@8TmQGAo5mGOeoW6d7zhpBiymkRy9w73X/8JfyzbuHPRT7WLOAyTgKsglg/grleh7QW5wME54dyT1dQOclY50IBbpJc59HXUVxd5NfPIkNwRgFq2RCTz4LY9xW14j7BN9iF2kh4mUYFksGksfRFHYUPRK1pdoZUSxwjQU@SGO@Y@9B27EVEnuVKPgOBf/2YmorrYK2pjSxdQRgzqnAWqzEt3V73cpRgh7VcwClPQRARYKq40zAprWOvrC5RreqS2119MnYizHa5@ko@2aIc4rpwVRHmRo0MvQtByywvaC/iMSz7ai4eEMXs5QNKJraxgL5cVshmECdLAQLq9C6fkiNA3tHNcfowCGuBhQTGWLSU3TdnroPREGQGxgKhVC0VDwX1VP0XMvKHBFAfSMmzK6VILKUYTfRFoER3ZJ6f8a4u42zplyV/MIMsNdqV@Uv2MuP3YWVsMNilEkOLY4Az5HBx@6WpeqtKDPxcZeUExdBYNsEdlrto@MCMzvnmIzMOh6@BG5VbWkRkssen3e2ePKUJkh7d6PSYVZF6ECREAKUO2d9yr87az3F8Ck/tMOSY1xRm1RE5E@oQecMUhP6ntfe9BI8fR1kSK761wZAY7ABxc0jqVUa0AFtNvpmH7eSvmgartIDGwa0rgojbZhNN9ecnsg1szFxiCR4Fc2LLe2EcROiM5ftU3nH2xR9zTI2KINiGY7AsUQN12yYACrEOSVHC5w5LD1/IQoGSxl5MyJwwiV1r9PWdAZPwEXywPVy3jQIkB7RqBiBE7cgKhdiu@GF3soFzCtEWNyPjo5EwxsETekWmhxAnP9FuPeKeqOQaxeKiCDX8XL0lx0A9lEK8rMGC3psslP3BXw7PP2Jc59FGwwCAe255eB@QICsu4e4UxgCwh0qpXFmF5t8wAx3WhILjC5WySWXKwTHK0ynTWIjGIQ2ZAlgSfTTvYsepiY3dc@ME@AMdPDollGG2JqInJdBzxj4ZyHRo/54wwxNBPaYLw90EYMgGy7bW9AQptp/FYTCD5sCBZGD3jyWIAFm4iiFMHUtBOM4e1LhKAe/hVZYMUqXc5juXdHa9LLVfE4pBdSOqF/eWglEQIVD2aWJ4BlW@ZcUbKbCSixNjI6OxKQfSQrHbZvluqrK7LLuG55iWqUnalyp0Liypm1M@rcJXPqs357SrVzVIDnEnAl/3jqjpHLuepFiBARd6UPDJ5U6IxTg6DV3WXpfI454QrAuoDYC77O8K8SyGyvnqQ1JU6ZIO0xlcL5zsVBVf7OUOea7ypYpLx37/@b9@MVETkuAH43FmgSEwPe1UJInzMEwVA7xVBmJ6f4rvAVgfLg8finiHniOKw9K7INSiVAqlQtTZaKJNftZq6mtQCF9jEsdLJt2b1ULlLu1gXABGaAwZI0@NrfsqJLQewPF2OWGzZRGaIzcwoRqYemB8VYKjf0D1wNK17it18zYOhTiO0PcZloSAqCuYbt2VV8pKaLJuq809CIYt4Ck@AdAHbfcJs62Oob/ZVBXwZNp40kXEWaB5CqZNpIEpotxDZmrsZj/ULEvIsFGDUWYhYcjTThCSYa38msbqVyAvJrI/9THpSGhzqDReiLpts4idyV1sc8@kDQuIF@Qr4ls9JFKM3OA0BwQa1w4KrGdRpF6qQSl3uV212xos3YG1aJmSuG0wMBHDF3mE6WfRGhye4wls1Pw@jazSrYDQj9Kr2fL@Lc26ogqO1duFp4@7iA5qrwi94LPLO8ZQq55W@l2j6RZi/0d6fmxssMWJbFnR8e/25J6txi1rsBmwDv74R@sg9xVvsIIlGFoFRgDRZ/Vl0Fgszi@tV5aA1i0nNyMuiSS5ziLizuCE25BXHQqxSoXFYgOrLM1wVoJHiJq3ULF7EnBZylqp0g2QxEDQB4WUG1XQEgmpglj6SQhAnbSaF4qmZKcgVBAdmpvgRAXxUJBbQDM1DGJsbJD@Ewz1wzPCcBd0gMm6I1JiDYvWom1w/z3YmNeAwLQ9i9TzZF1R3vkSxGSH4fJKTJbt1s@D0/L5pIdA8akSfABEU8YvdAMN0U9Z1jglxzNj37RLnRlO0IH8ABQ/AIxpRQr0IOr1psNWSD6UjKzYyQDZU4CvC2ioLAEmSAdnuWNmyVAx5Fmx5uuwsq6WxCtYUIVV8x1pM27HAV8x@vGBXo0jFUpfsRFJMX9vUmb2rC11APQ4mJO6En/Trr32Ek@uIgk7H118mFMdA1f//10Zv2GGyWRDCtebzsLyBFj7jcMm1OCK2zvIWJ9ssYpHbic4JYckwVsGRQC/cNwptRmg1PhxEeYMfJft2WSiXYl/GRCFRF18rPFMjxbF0VnxYESKB680myWbgrKD7KODaMkUn@ngTFJDudmcXS0Wo2AUAILA@P6HK6oG2mkWRH0UlT3VuZE22ov622rVZ5ABfa8ilKR83ybcXrtpHtJ/3w1xYkqAPe96ihlGWrLQo6KJLWgT3UvbUojYEsGpHS@df@wnhYjUdJ76JuQuhgAHDlv6oYNvOzJ4LkmBFfgBFUBZbL1ULHpO1dBBql9dfTaJRLPYAvAxSIECKksc4TPBDvf4fLFfOw/bdXUUn792ltX7cRSgCPZkYAaFUe/WccEEMiHQNTmExqHjbSj20RN8DSZH/IO1Yus71fT9nanPYoQVvFs/bPKLSQWuDvQNAB5TbS7reONJO@Z4xW3nMBCR1Gc6zM@Q2N7YWUjwScR4GjNrL@cLlAtTIPiTvN1IuuMDAFL0OSpFItRPqLJ6vAQB5kdjGZjhjTKPk8PKQ4WUm2yS/RX4TxzUzlhLZv35q6FMBLi5Mbf28cKgxEPUXWUqbf/2ESEcpwt4Qglf1GWtgZy0mu@SjUatTZcRIs3xKwKaiUNJY2GFrsjFg8LF@dLHOIoGYHs94AmvFRjaISdIhyyGi2jssWnLCKnp1BcbegWKRsDpkw/PaAFdhK6Nx8CBsxiI9mG8VD/w3CeVT@RPD@VSUJ7UiNRvCrMgixm/6Lt4cZ650KGHR0AkiwMU1LvLNQu3ff0DFewqn9K3mdCKPElJjV65qlDbHlFVpRRddPxKs@0kDwbgqLBNUnGXQzKV6I3qkvHJ8PlDk5Xbjxi5dbS@DuHTAQRBowXsVBFVATdIJF@6rqA2eEgO19eCkaKsj39mwyeF4yaB2sMgLa/Qg4XNUaiD7EI2gjGalkRC0Sx8gJfKXyLF1hRO1dGlWh8JCHWtCSELAXjhKFNB4OlooCru4GIvJbp5o7MQ1DiLiqoUn40VHa8PvX7JZkygVRJk5pKskuaSK9FRZ4058/bn5MXINtm/LfBSJCXiYNzVtQEWW79dKydFZekBSa2g7obtm75wPPr7yMYrlhMiTCbgGz9GH6P2hY6VCfA2/7q0Hk8AjBM1E1c6mSJijcSq/pZbYHJAGk5NamUgnIqdU5pAK8sccJtNJ43EXO/sgG6AMXBo6bj99XvWCzhcCvMVTxeNslZOedNXpmofzjMQKvawEwj0F1byfiKZyLJ28gsu4yNMmaHstsFNTciGJpc7hyxz@65MOaT8c3C9LyCXLIB71heVOUBUuorRtgUUQIMYYMe2vPHjaMoR9ig/0gR11iENIiqiy6VQPRuHquEhOK@klKn1DO0l@eaODQ@R3paglB9EpfhMmG28Ra@LpbLzlVByIWRGu0VqZPxwRQPeKRYaOgQk8@cnFEhk8@cwRV1bBIXx4Nc9qOZqTy8QCqTOXP4BlKyTZ18K51xY9AA/rAguusZ9YyaMwIYfiM8c7QRCKpIGXL4yfJG@PbrP45NNFFngFOPkQOkrBkal9hxNLn7E8cgDipUeGXWrvmIxFKkUAB6rpmuOXC6bZiy2FJtIkoy3PgbgigOK4JD0fhPqVPpvtTphZ3q2F2Q2CRQwFxKH8HvlQhty6J7YkLybzYgSkJcUHIEcfZKOcowQhYjPqsi13fLyTx8jpEcspXKYv62nuROafrHgUKkYsdVqot1GtzVwxPRr/AF7oBCzNH4uPKeDN5@PM7uZi/nDIlwRkrhDAbT0CObAnz2Fz9acOSK@PvZQqXO02CyhdSwaNbHLsv2R6jYxZF6EQ6ZsCv8K391eRsGhESrBI/GleVBOs6YpYjT4ybYRXRKLOAaKIVUP5WfiyAROTfLjQBekE4LuuJBcEafpOs89TjXROnPwF9QZpYMVwXMdg6WzXHm0BlOigud3wUhwBkdOT0fu4GxRZ882GI8RGK3KXCA3ljD4z1XgAZaPLpwx3FZSnD3zqClM0d6tn2jAZfzyQOlAaP0Q4iECnyTB5qrcf4nOh@DtiOo9IqiUJkujxhxBJWJJs4shtElVPRRJbU3b@SHncTUmUtzgzF@CVZdkP4JsHfXI29O3pZDI@Stk/H1e23CIXz@R@5np8gCrQROUyoJxpwlOYPOzjB7nxoz0exj4qoAVFZcZ@2F@esPqan7BmVA2dJuUtDhKA74tTxM@Kf4zUQNVxkYraYOfmi29Cm2R1Dls5S1B5d0jPmeNNtqE0S1psVNAYW9TbgGfGfCcac9rTW3yJzYsaLy9iPH5GplLO99Mon56e6Ndtn1js24@t@MYDgYd3T38yT@8b7vbTw7qB7n1PRHu1rmVC0Sev@qq6svT7y7ff/dB@/Ng@8btPP6Dggp5v@vhd@/Th6b/01Bob6M5Bhx8ox7sgjRw@fUW1b5xEGdHLd3nsD@3zH5/fn4Y5dVZe9tTn8O6o6O/ar470oZ3l9lHDoQfRfv5OS/Pu8zcSmXHAoDFcL//z9P79@@@/@/bb3Psn4T/B/8ib6HeT39ysMu/4Dp66/P4HVAUWy7/g7vUJmc2Ed89/fvPmX57rxDCfD8@sz4fn9@@fmvRG7uP9b7/9Bw "Python 3 – Try It Online"
  • [TIO-lmzg5d4n]: https://tio.run/##FY/LbcRQCEVbmZ1nJJRNOqAT3jNjM@Z9gk0sTz9pIt2kEgdvjg666Ar6sc2tfp5nN6nbfTDBp0yQyDCJ4sg7Flfc6EBK4hGwwkgbg0oJuDaozAVqqwKdyaCLhqkXMCkOqzaGtVmCw99RwFe1OmM2qoG2Ixe/4Ux5wZdXxqsZu4QZrR33y/amTzx4v2GsMQMtnASodw03ehNkytSCXy5Bawl4szbB9Pf7k2Ey6gyT0zeBKBWCF8UES1vi0MUTKSiXVqFQnRoU1su9jh5c5/iSaubhw7grZb4POMCQ2OyA4fE4z38 "Python 3 – Try It Online"
  • # [Python 3], ~~319~~ 318 bytes
  • ```python
  • print('riBfig,barBbilBdewBmulBtayBabiu,bael,date,lime,lulo,neem,noni,pear,pili,plum,rimu,sloe,sorb,yuzu,bearBblueBcranBcrowBemu BhackBjuneBlimeBpineBraspBwineBwolfByew Backee,akebi,apple,araza,cacao,caqui,carob,etrog,gấc,grape,guava,ilama,jagua,kokum,kubal,lemon,mango,melon,mundu,musho,nance'.replace('B','berry,'))
  • ```
  • [Try it online!][TIO-lmzg5d4n]
  • ---
  • *1 byte saved thanks to [msb's comment](https://codegolf.codidact.com/comments/thread/8512#comment-21966) which made me realise I was sorting the fruit by string length (which measures characters instead of bytes, making fruits with diacritics seem shorter than they really are).*
  • ---
  • This works by representing `berry,` (including the comma) as `B`. This means every fruit that ends in "berry" can effectively save 5 bytes. It turns out there are enough berries to make the 22 byte cost of `replace` worthwhile.
  • This is the 55 shortest fruits measuring length after substituting "berry," with "B". I generated the code using this code: [Try it online!][TIO-lmzftgr9]
  • ## My initial failed attempts
  • Before I found this approach I tried shortening the other two Python 3 answers, but in both cases my misguided efforts only made the code longer...
  • ### Trying to shorten [steffan153's answer](https://codegolf.codidact.com/posts/287088/287094#answer-287094)
  • I noticed that some of the fruits had diacritics, which makes them longer in bytes than they appear, so instead of just using the 55 shortest fruit by characters, I used the 55 shortest fruit after throwing away any fruit with diacritics, like gấc and açaí. However, since we've already used up all of the fruit of length 5 bytes or less, each diacritic fruit removed brings in another 6 byte fruit, so the total length of the code went up by a byte:
  • ```python
  • print('fig abiu bael date lime lulo neem noni pear pili plum rimu sloe sorb yuzu ackee akebi apple araza cacao caqui carob etrog grape guava ilama jagua kokum kubal lemon mango melon mundu musho nance ooray peach pequi pluot prune pudau rowan rukam salak salal tapia terap tilap toyon wongi almond babaco bacuri banana bignay')
  • ```
  • [Try it online!][TIO-l8r3k4fp]
  • ### Trying to shorten [Moshi's answer](https://codegolf.codidact.com/posts/287088/287095#answer-287095)
  • I thought I could save some bytes by using fewer distinct characters in the list of fruits, since all of these need to be listed in the `while` loop that extracts the data. So I repeatedly found the letter present in fewest fruits, and discarded all fruits containing that letter, stopping short of ending up with fewer than 55 fruits remaining. This left me with only 14 distinct characters, down from 16 in the original code. However, the 2 bytes this saved were overwhelmed by the fact that the new list of 55 fruits contained longer fruits, since I'd discarded some of the shorter ones, leaving the code 14 bytes longer:
  • ```python
  • from base64 import*
  • n=int.from_bytes(b85decode('5YBr@2zdh)fdaH`|L?o31mzCMMOw^}6Gp}*cGPdkWp!!fj9sk(ll2zIiI9x(m!Z#)4FT|UW1Q!@&rHc#p7PfklqbhsG`5TO^jF^L@qmX-@zKRADY>W*()(`#6^w=;IP9xHTgMq6GED;7>E#S9WNiB|2eKZ!HJ!qD(`e}qPwt+~b^KgJISyhSv!lv?ba68XFLI3{>}kf^>gaG928Ym{URfadB71USJH9{@PJ;Ya'),'big')
  • while n:print(end="ambling poetry"[n%14]);n//=14
  • ```
  • [Try it online!][TIO-l8r46k1t]
  • ---
  • In hindsight I have no idea why I thought either of my initial approaches would work.
  • [Python 3]: https://docs.python.org/3/
  • [TIO-l8r3k4fp]: https://tio.run/##HZBBdsMwCESvMru0655oJFNHFRKqLJrnXN4h3XyG1R8Y57pb/7quMUtfH7fvsoOpOBJFsXEJtLSAq6GLNHTrBUM4MYpGUm@YpTkONcFhM@H0p4O5ioBVUgHH0MiTTyIz04K/XoLTEmRN27FPDsHu/COKshE/jA3VahiqJypUmnU09t3QRN/Z@@bB4x712LPAbPJ8F8z34NsSFW1hTO@C4Rsd0x7smF7ZcFBZ/6lYHIVYElWwokTQzrA8rO9xhYZ9i88kZouRfZYYoSVS2TvP2@d1vQA "Python 3 – Try It Online"
  • [TIO-l8r46k1t]: https://tio.run/##FdDZUoJQAADQd79CZEqwxQERJQYkU1nUJNFRbCJALouyw7ig9utUz@ftxOfcjcJWWdppFFRNIwMkUfWCOErzRiVkvDB//pdv85yDDDG7bQtsIwsg9bbaTzm8sFzUtgxBv056UQsLirfpdHbUbiQf3xpbXrb2qxiC7B2V7RHfxwvRE6kTEkAbGCVGi@tyhX1A3H0qbOG4I9t7PzHdjNfbi5m2G2kTLgnWT1wxnr8OVHbVQFBEh0ntyNCiTJ2EhTNNSH44oDvsEFao1bvXv@JgvIEECUoGiA5uiXzMH35MbexIonJ2lQPkH3qmQXbXo4nYurC3va2xjsFTeFcNLsu5bVj9DrZUJIG6cLJEq0YdfaybnlNHK0fX80E1fInTvxMEhBZTMwLT90KnGkcgT8@1z/AOI75QOmw2GYwoy18 "Python 3 – Try It Online"
  • [TIO-lmzftgr9]: https://tio.run/##hVpNjuS4sd7rFEJtqhvuHMAwBngYoDe@xnjQoCSmxBRFaviT2SrDR5iNT2DDePBqFg@zm23BeOfwScZfBH8kVTdgVEGMCElkMBiM@ILKdQuTNX/47TfRfmyfnp5Ep2IjXv8pXn9uRC@d1QLtRP9oZykbcR0nYdp@ks5t4JzqwXbCdqJrry6qUIXpmdY6YUa5S6MPwg0Xsa56l2pL8raTwlTZgvfsmfNByv0Bq3S7Cr28GXeV0LcRYxRe/RhVI2bZ4aqFn0nVaPqpS9prLcdJmq1ddVzALtYMubloKe5yoM5cIzC4CD4S8WJNOzqxQvelE05qMtEisx2kiGHLvVehhulaqQfp3txZxJbNUCRvp1Tkq3ReLVDsIGKdC@eg69eGILkTfs1iM0YtXOuluFzVCN5Yo3gKSQ@6tvnZFT3YUNo8XmLO1nFwG1pZe72Sh2T2ofTQFps6EVQfl0svxtd/2MQbCNrBYr5OkOSFrj2eOyrsFmlUMWKWebG0o9RxjC4xMxhaYq/S8kMc5GI3dBjghAFLdugSjuaEVl@47d32YrANJKKnpo9OoZEaF6VpuaTGAnTiZqMTba@CY1aL8Pp3arW1JhuvI@cwo6D7Bn@5qV0wswrvlTVp@CzbYt/T03kdO/LlZPpEku6P4z0fRyxoWj5I3LOvj9c@tK4PLLwZOwndNPaiw@bE2NKNYsEa573aqdEIvKh07iETbS/6EH02GKRqgdk7ZW6CGtdP8ItrWgGwQwkToFVHNlIhSFdH4X2RFWO6PJ6YohxzSyy6MJumyOS@son3YrUh93iQ791ZO7TQXGayahNli5jhaNGJPq8OSfxDygAbaHiIn5IMvjXG9HYezM4TnDlraLW6k6ctNpogFG2S3poY6M4DY2Gp7dJZchCLWKWpdfb2@gvazUuT@8TmQGAo5mGOeoW6d7zhpBiymkRy9w73X/8JfyzbuHPRT7WLOAyTgKsglg/grleh7QW5wME54dyT1dQOclY50IBbpJc59HXUVxd5NfPIkNwRgFq2RCTz4LY9xW14j7BN9iF2kh4mUYFksGksfRFHYUPRK1pdoZUSxwjQU@SGO@Y@9B27EVEnuVKPgOBf/2YmorrYK2pjSxdQRgzqnAWqzEt3V73cpRgh7VcwClPQRARYKq40zAprWOvrC5RreqS2119MnYizHa5@ko@2aIc4rpwVRHmRo0MvQtByywvaC/iMSz7ai4eEMXs5QNKJraxgL5cVshmECdLAQLq9C6fkiNA3tHNcfowCGuBhQTGWLSU3TdnroPREGQGxgKhVC0VDwX1VP0XMvKHBFAfSMmzK6VILKUYTfRFoER3ZJ6f8a4u42zplyV/MIMsNdqV@Uv2MuP3YWVsMNilEkOLY4Az5HBx@6WpeqtKDPxcZeUExdBYNsEdlrto@MCMzvnmIzMOh6@BG5VbWkRkssen3e2ePKUJkh7d6PSYVZF6ECREAKUO2d9yr87az3F8Ck/tMOSY1xRm1RE5E@oQecMUhP6ntfe9BI8fR1kSK761wZAY7ABxc0jqVUa0AFtNvpmH7eSvmgartIDGwa0rgojbZhNN9ecnsg1szFxiCR4Fc2LLe2EcROiM5ftU3nH2xR9zTI2KINiGY7AsUQN12yYACrEOSVHC5w5LD1/IQoGSxl5MyJwwiV1r9PWdAZPwEXywPVy3jQIkB7RqBiBE7cgKhdiu@GF3soFzCtEWNyPjo5EwxsETekWmhxAnP9FuPeKeqOQaxeKiCDX8XL0lx0A9lEK8rMGC3psslP3BXw7PP2Jc59FGwwCAe255eB@QICsu4e4UxgCwh0qpXFmF5t8wAx3WhILjC5WySWXKwTHK0ynTWIjGIQ2ZAlgSfTTvYsepiY3dc@ME@AMdPDollGG2JqInJdBzxj4ZyHRo/54wwxNBPaYLw90EYMgGy7bW9AQptp/FYTCD5sCBZGD3jyWIAFm4iiFMHUtBOM4e1LhKAe/hVZYMUqXc5juXdHa9LLVfE4pBdSOqF/eWglEQIVD2aWJ4BlW@ZcUbKbCSixNjI6OxKQfSQrHbZvluqrK7LLuG55iWqUnalyp0Liypm1M@rcJXPqs357SrVzVIDnEnAl/3jqjpHLuepFiBARd6UPDJ5U6IxTg6DV3WXpfI454QrAuoDYC77O8K8SyGyvnqQ1JU6ZIO0xlcL5zsVBVf7OUOea7ypYpLx37/@b9@MVETkuAH43FmgSEwPe1UJInzMEwVA7xVBmJ6f4rvAVgfLg8finiHniOKw9K7INSiVAqlQtTZaKJNftZq6mtQCF9jEsdLJt2b1ULlLu1gXABGaAwZI0@NrfsqJLQewPF2OWGzZRGaIzcwoRqYemB8VYKjf0D1wNK17it18zYOhTiO0PcZloSAqCuYbt2VV8pKaLJuq809CIYt4Ck@AdAHbfcJs62Oob/ZVBXwZNp40kXEWaB5CqZNpIEpotxDZmrsZj/ULEvIsFGDUWYhYcjTThCSYa38msbqVyAvJrI/9THpSGhzqDReiLpts4idyV1sc8@kDQuIF@Qr4ls9JFKM3OA0BwQa1w4KrGdRpF6qQSl3uV212xos3YG1aJmSuG0wMBHDF3mE6WfRGhye4wls1Pw@jazSrYDQj9Kr2fL@Lc26ogqO1duFp4@7iA5qrwi94LPLO8ZQq55W@l2j6RZi/0d6fmxssMWJbFnR8e/25J6txi1rsBmwDv74R@sg9xVvsIIlGFoFRgDRZ/Vl0Fgszi@tV5aA1i0nNyMuiSS5ziLizuCE25BXHQqxSoXFYgOrLM1wVoJHiJq3ULF7EnBZylqp0g2QxEDQB4WUG1XQEgmpglj6SQhAnbSaF4qmZKcgVBAdmpvgRAXxUJBbQDM1DGJsbJD@Ewz1wzPCcBd0gMm6I1JiDYvWom1w/z3YmNeAwLQ9i9TzZF1R3vkSxGSH4fJKTJbt1s@D0/L5pIdA8akSfABEU8YvdAMN0U9Z1jglxzNj37RLnRlO0IH8ABQ/AIxpRQr0IOr1psNWSD6UjKzYyQDZU4CvC2ioLAEmSAdnuWNmyVAx5Fmx5uuwsq6WxCtYUIVV8x1pM27HAV8x@vGBXo0jFUpfsRFJMX9vUmb2rC11APQ4mJO6En/Trr32Ek@uIgk7H118mFMdA1f//10Zv2GGyWRDCtebzsLyBFj7jcMm1OCK2zvIWJ9ssYpHbic4JYckwVsGRQC/cNwptRmg1PhxEeYMfJft2WSiXYl/GRCFRF18rPFMjxbF0VnxYESKB680myWbgrKD7KODaMkUn@ngTFJDudmcXS0Wo2AUAILA@P6HK6oG2mkWRH0UlT3VuZE22ov622rVZ5ABfa8ilKR83ybcXrtpHtJ/3w1xYkqAPe96ihlGWrLQo6KJLWgT3UvbUojYEsGpHS@df@wnhYjUdJ76JuQuhgAHDlv6oYNvOzJ4LkmBFfgBFUBZbL1ULHpO1dBBql9dfTaJRLPYAvAxSIECKksc4TPBDvf4fLFfOw/bdXUUn792ltX7cRSgCPZkYAaFUe/WccEEMiHQNTmExqHjbSj20RN8DSZH/IO1Yus71fT9nanPYoQVvFs/bPKLSQWuDvQNAB5TbS7reONJO@Z4xW3nMBCR1Gc6zM@Q2N7YWUjwScR4GjNrL@cLlAtTIPiTvN1IuuMDAFL0OSpFItRPqLJ6vAQB5kdjGZjhjTKPk8PKQ4WUm2yS/RX4TxzUzlhLZv35q6FMBLi5Mbf28cKgxEPUXWUqbf/2ESEcpwt4Qglf1GWtgZy0mu@SjUatTZcRIs3xKwKaiUNJY2GFrsjFg8LF@dLHOIoGYHs94AmvFRjaISdIhyyGi2jssWnLCKnp1BcbegWKRsDpkw/PaAFdhK6Nx8CBsxiI9mG8VD/w3CeVT@RPD@VSUJ7UiNRvCrMgixm/6Lt4cZ650KGHR0AkiwMU1LvLNQu3ff0DFewqn9K3mdCKPElJjV65qlDbHlFVpRRddPxKs@0kDwbgqLBNUnGXQzKV6I3qkvHJ8PlDk5Xbjxi5dbS@DuHTAQRBowXsVBFVATdIJF@6rqA2eEgO19eCkaKsj39mwyeF4yaB2sMgLa/Qg4XNUaiD7EI2gjGalkRC0Sx8gJfKXyLF1hRO1dGlWh8JCHWtCSELAXjhKFNB4OlooCru4GIvJbp5o7MQ1DiLiqoUn40VHa8PvX7JZkygVRJk5pKskuaSK9FRZ4058/bn5MXINtm/LfBSJCXiYNzVtQEWW79dKydFZekBSa2g7obtm75wPPr7yMYrlhMiTCbgGz9GH6P2hY6VCfA2/7q0Hk8AjBM1E1c6mSJijcSq/pZbYHJAGk5NamUgnIqdU5pAK8sccJtNJ43EXO/sgG6AMXBo6bj99XvWCzhcCvMVTxeNslZOedNXpmofzjMQKvawEwj0F1byfiKZyLJ28gsu4yNMmaHstsFNTciGJpc7hyxz@65MOaT8c3C9LyCXLIB71heVOUBUuorRtgUUQIMYYMe2vPHjaMoR9ig/0gR11iENIiqiy6VQPRuHquEhOK@klKn1DO0l@eaODQ@R3paglB9EpfhMmG28Ra@LpbLzlVByIWRGu0VqZPxwRQPeKRYaOgQk8@cnFEhk8@cwRV1bBIXx4Nc9qOZqTy8QCqTOXP4BlKyTZ18K51xY9AA/rAguusZ9YyaMwIYfiM8c7QRCKpIGXL4yfJG@PbrP45NNFFngFOPkQOkrBkal9hxNLn7E8cgDipUeGXWrvmIxFKkUAB6rpmuOXC6bZiy2FJtIkoy3PgbgigOK4JD0fhPqVPpvtTphZ3q2F2Q2CRQwFxKH8HvlQhty6J7YkLybzYgSkJcUHIEcfZKOcowQhYjPqsi13fLyTx8jpEcspXKYv62nuROafrHgUKkYsdVqot1GtzVwxPRr/AF7oBCzNH4uPKeDN5@PM7uZi/nDIlwRkrhDAbT0CObAnz2Fz9acOSK@PvZQqXO02CyhdSwaNbHLsv2R6jYxZF6EQ6ZsCv8K391eRsGhESrBI/GleVBOs6YpYjT4ybYRXRKLOAaKIVUP5WfiyAROTfLjQBekE4LuuJBcEafpOs89TjXROnPwF9QZpYMVwXMdg6WzXHm0BlOigud3wUhwBkdOT0fu4GxRZ882GI8RGK3KXCA3ljD4z1XgAZaPLpwx3FZSnD3zqClM0d6tn2jAZfzyQOlAaP0Q4iECnyTB5qrcf4nOh@DtiOo9IqiUJkujxhxBJWJJs4shtElVPRRJbU3b@SHncTUmUtzgzF@CVZdkP4JsHfXI29O3pZDI@Stk/H1e23CIXz@R@5np8gCrQROUyoJxpwlOYPOzjB7nxoz0exj4qoAVFZcZ@2F@esPqan7BmVA2dJuUtDhKA74tTxM@Kf4zUQNVxkYraYOfmi29Cm2R1Dls5S1B5d0jPmeNNtqE0S1psVNAYW9TbgGfGfCcac9rTW3yJzYsaLy9iPH5GplLO99Mon56e6Ndtn1js24@t@MYDgYd3T38yT@8b7vbTw7qB7n1PRHu1rmVC0Sev@qq6svT7y7ff/dB@/Ng@8btPP6Dggp5v@vhd@/Th6b/01Bob6M5Bhx8ox7sgjRw@fUW1b5xEGdHLd3nsD@3zH5/fn4Y5dVZe9tTn8O6o6O/ar470oZ3l9lHDoQfRfv5OS/Pu8zcSmXHAoDFcL//z9P79@@@/@/bb3Psn4T/B/8ib6HeT39ysMu/4Dp66/P4HVAUWy7/g7vUJmc2Ed89/fvPmX57rxDCfD8@sz4fn9@@fmvRG7uP9b7/9Bw "Python 3 – Try It Online"
  • [TIO-lmzg5d4n]: https://tio.run/##FY/LbcRQCEVbmZ1nJJRNOqAT3jNjM@Z9gk0sTz9pIt2kEgdvjg666Ar6sc2tfp5nN6nbfTDBp0yQyDCJ4sg7Flfc6EBK4hGwwkgbg0oJuDaozAVqqwKdyaCLhqkXMCkOqzaGtVmCw99RwFe1OmM2qoG2Ixe/4Ux5wZdXxqsZu4QZrR33y/amTzx4v2GsMQMtnASodw03ehNkytSCXy5Bawl4szbB9Pf7k2Ey6gyT0zeBKBWCF8UES1vi0MUTKSiXVqFQnRoU1su9jh5c5/iSaubhw7grZb4POMCQ2OyA4fE4z38 "Python 3 – Try It Online"
#2: Post edited by user avatar trichoplax‭ · 2023-09-25T22:34:11Z (7 months ago)
Save 1 byte thanks to msb's comment
  • # [Python 3], 319 bytes
  • ```python
  • print('riBfig,gấc,barBbilBdewBmulBtayBabiu,açaí,bael,date,lime,lulo,neem,noni,pear,pili,plum,rimu,sloe,sorb,yuzu,bearBblueBcranBcrowBemu BhackBjuneBlimeBpineBraspBwineBwolfByew Backee,akebi,apple,araza,cacao,caqui,carob,etrog,grape,guava,ilama,jagua,kokum,kubal,lemon,mango,melon,mundu,musho'.replace('B','berry,'))
  • ```
  • [Try it online!][TIO-l8r2su8j]
  • This works by representing `berry,` (including the comma) as `B`. This means every fruit that ends in "berry" can effectively save 5 bytes. It turns out there are enough berries to make the 22 byte cost of `replace` worthwhile.
  • This is the 55 shortest fruits measuring length after substituting "berry," with "B". I generated the code using this code: [Try it online!][TIO-l8r5md6s]
  • [Python 3]: https://docs.python.org/3/
  • ## My initial failed attempts
  • Before I found this approach I tried shortening the other two Python 3 answers, but in both cases my misguided efforts only made the code longer...
  • ### Trying to shorten [steffan153's answer](https://codegolf.codidact.com/posts/287088/287094#answer-287094)
  • I noticed that some of the fruits had diacritics, which makes them longer in bytes than they appear, so instead of just using the 55 shortest fruit by characters, I used the 55 shortest fruit after throwing away any fruit with diacritics, like gấc and açaí. However, since we've already used up all of the fruit of length 5 bytes or less, each diacritic fruit removed brings in another 6 byte fruit, so the total length of the code went up by a byte:
  • ```python
  • print('fig abiu bael date lime lulo neem noni pear pili plum rimu sloe sorb yuzu ackee akebi apple araza cacao caqui carob etrog grape guava ilama jagua kokum kubal lemon mango melon mundu musho nance ooray peach pequi pluot prune pudau rowan rukam salak salal tapia terap tilap toyon wongi almond babaco bacuri banana bignay')
  • ```
  • [Try it online!][TIO-l8r3k4fp]
  • ### Trying to shorten [Moshi's answer](https://codegolf.codidact.com/posts/287088/287095#answer-287095)
  • I thought I could save some bytes by using fewer distinct characters in the list of fruits, since all of these need to be listed in the `while` loop that extracts the data. So I repeatedly found the letter present in fewest fruits, and discarded all fruits containing that letter, stopping short of ending up with fewer than 55 fruits remaining. This left me with only 14 distinct characters, down from 16 in the original code. However, the 2 bytes this saved were overwhelmed by the fact that the new list of 55 fruits contained longer fruits, since I'd discarded some of the shorter ones, leaving the code 14 bytes longer:
  • ```python
  • from base64 import*
  • n=int.from_bytes(b85decode('5YBr@2zdh)fdaH`|L?o31mzCMMOw^}6Gp}*cGPdkWp!!fj9sk(ll2zIiI9x(m!Z#)4FT|UW1Q!@&rHc#p7PfklqbhsG`5TO^jF^L@qmX-@zKRADY>W*()(`#6^w=;IP9xHTgMq6GED;7>E#S9WNiB|2eKZ!HJ!qD(`e}qPwt+~b^KgJISyhSv!lv?ba68XFLI3{>}kf^>gaG928Ym{URfadB71USJH9{@PJ;Ya'),'big')
  • while n:print(end="ambling poetry"[n%14]);n//=14
  • ```
  • [Try it online!][TIO-l8r46k1t]
  • ---
  • In hindsight I have no idea why I thought either of my initial approaches would work.
  • [Python 3]: https://docs.python.org/3/
  • [TIO-l8r2su8j]: https://tio.run/##FY/NbcMwDEZXyc0JQPTSDbgJZTO2YkpUabOGs0/RUxfoNZN0Epe@PDziI/jT9nXS@n4czXJdr51lvOcRxr/frx4SGaYsOPCGxQVX2pFSdqDXN71@ImeBgVYGySXgolCZC1StGRqTQcsSJl7AcnFYRBkWtQS7Px0SnxvEGXujGtANufgFJ@pnfHhlPCdjy2FGS8PttE3ljjtvF4w2ZqCZUwZqTcKNngQ99aTBD89B0wS8msZfRo1hdPokyEKF4EFRwaxznDh7IgHhohUK1VGhsJzudfDgMmn3ZtyEer522EGX2GyH7nY7jn8 "Python 3 – Try It Online"
  • [TIO-l8r3k4fp]: https://tio.run/##HZBBdsMwCESvMru0655oJFNHFRKqLJrnXN4h3XyG1R8Y57pb/7quMUtfH7fvsoOpOBJFsXEJtLSAq6GLNHTrBUM4MYpGUm@YpTkONcFhM@H0p4O5ioBVUgHH0MiTTyIz04K/XoLTEmRN27FPDsHu/COKshE/jA3VahiqJypUmnU09t3QRN/Z@@bB4x712LPAbPJ8F8z34NsSFW1hTO@C4Rsd0x7smF7ZcFBZ/6lYHIVYElWwokTQzrA8rO9xhYZ9i88kZouRfZYYoSVS2TvP2@d1vQA "Python 3 – Try It Online"
  • [TIO-l8r46k1t]: https://tio.run/##FdDZUoJQAADQd79CZEqwxQERJQYkU1nUJNFRbCJALouyw7ig9utUz@ftxOfcjcJWWdppFFRNIwMkUfWCOErzRiVkvDB//pdv85yDDDG7bQtsIwsg9bbaTzm8sFzUtgxBv056UQsLirfpdHbUbiQf3xpbXrb2qxiC7B2V7RHfxwvRE6kTEkAbGCVGi@tyhX1A3H0qbOG4I9t7PzHdjNfbi5m2G2kTLgnWT1wxnr8OVHbVQFBEh0ntyNCiTJ2EhTNNSH44oDvsEFao1bvXv@JgvIEECUoGiA5uiXzMH35MbexIonJ2lQPkH3qmQXbXo4nYurC3va2xjsFTeFcNLsu5bVj9DrZUJIG6cLJEq0YdfaybnlNHK0fX80E1fInTvxMEhBZTMwLT90KnGkcgT8@1z/AOI75QOmw2GYwoy18 "Python 3 – Try It Online"
  • [TIO-l8r5md6s]: https://tio.run/##hVpNjuW4Dd77FEZtqhvpN0AQzCZAb3KNyaAh23q2nmXJI1nvtSvIEWaTEyQIgqxmEcxutoUg58hJJh@pH8vVDQRVsEjaliiKIj/Kb923yZrf/fqraD@2T09PolOhEa//FK8/NaKXzmqBdqJ/tLOUjbiOkzBtP0nndnBO9WA7YTvRtVcX1FaE8ZnWOmFGeUiD34QbLmJd9SHVluRtJ4UpsgXv2TPnNymPB6zS7Sr08mbcVULfRoxBePVDUI2YZYerFn4mVYPppy5qr7UcJ2n2dtVhAbtYM6TmoqW4y4E6c43A4GLzgYgXa9rRiRW6L51wUpOJFpnsIEXY9tR7EWqYrpV6kO7NnUXsyQxZ8nZKWb5K59UCxSoR65w5B12/NgTJnfBrEpsxaOFaL8XlqkbwxhrFU4h60LVNz67owW65TeNF5mwdB7ehlbXXK3lIYh9KD222qROb6sNy6cX4@ncbeQNBO1jM1wmSvNC1x3O1wm6RRmUjJpkXSztKHcbgIjODoSX2Ki4/xJtc7I4ONzjhhiWruoSjOaHVF257t70YbAOJ6Knpg1NopMZFaVouqbEAnbjZ4ETbq80xq8X2@jdqtbUmGa8j5zCjoPsGf6kpXTCzCu@VNXH4JNtD39PTaR078uVo@kiS7o/6ng8jFjQuHyTu2ZfHSx9alwcW3oydhG4ae9Fhc2Js6UaxYI3TXu3UaAReVDr1kIi2F/0WfDIYpGqB2TtlboIa10/wi2tcAbBDDhOgVUc2UtsmXRmF90VSjOn8eGSycswtIevCbJwik8fKRt6L1W6px0p@dGft0EJzmciiTZAtYoajRSf6vDok8Q8pN9hAw0P8FGXwrTHEt9Ngdp7gzElDq9WdPG2xwWxC0SbprQkb3XlgLCy1XTpLDmIRqzS1zt5ef0a7e2lSn9gcCAzZPMxRr1D3jjecFENSk0ju3uH@6z/hj3kbdy74qXQRhmEScBXE8gHc9Sq0vSAXODgnnHuymtpBzioFGnCL9DKFvo766gKvZhoZkjsCUMuWCGQe3LanuA3vEbZJPsRO0sMkaiMZbBpyX8RR2FD0ilZXaKVEHQF6itxwx9SHvmM3IupEV@oREPzrX81EVBd6RW1o6QLKiEGds0CReenuqpeHFCPE/QpGYQqaiA2WCisNs8Ia1vryAuWaHqnt9WdTJuJsh6uf5KPN2iGOK2cFUV6k6NCLbdNyTwvaC/iMiz7ai4eEMXs5QNKJPa9gL5cVshmE2aSBgXR7F07JEaFvaOew/BAENMDDgmIsW0rumrJXpfREGQGxgKhVC0VDwX1VPwXMvKHBFAfSPGzM6VILKUYTfBZoERzZJ6X8a4u42zplyV/MIPMNdqV@Uv2MuP04WJsNNilEkOzY4Az5HBx@6UpeKtLKn7OMvCAbOokG2KMwV20fmJEZ3zxE5uHQVblRvpV0ZAZLbPrj3tljshDZ4a1ej0ltMi3ChAiAlCHbO@6VedtZHi@BSX3GHBOb7IxaIicifUIPuOKQntT2fvSgkeNoayLF91Y4MoMdAA4ucZ3yqFYAi@k307D9vGfzQNV2kBjYNTlwURttwuk@v2SOwa2ZMwzBo0AubFlv7CMLnZEcv8obzr7YGvf0iBiijQgm@QIFULdfEqAA65AkFVyuWnL4WhoClMz2clKmhEHkSqt/5AyIjJ/gi/nhomUYKDGgXQMQMWJHSiDU7tkXgwsdlIuYNqsRGB@dnClsLJF3ZFooccIz/d4j3qlijkEsHqpgw9/FS1Qc9EMZxOsCDNit6XJJD9zV8OwT9mUOfWQsMIjHfqTXATmCwjLuXmEMIEuItOqVRVg@LDPAcd2WEVzmUjZJLDlYIjlaJTppERnEITMgS4JPph3sWHSxoasXfrAPwPGTQ2IZRpsjamQSHUb8o6Fch8bPKSMMYeunOEH4@yAMmQDZ9treAIX203gsJpBcLUgSBs94MhuAhbvYxKkDKWinmWqtswTgHn5V2E2K2Lscx/zugdelliti8ZZcSOqF/aVSSiIEqh5NyM@ASrfMOCNlNhJRYmxkcHalIFolq0N27JYiK@tySHiuaYmKlF2pcOfCoogZ9fMqXOWzalN@u0p1s9QAZxLwZf@4qs6Ry3mqBQhQkTdFj4zeFGmMk8LgVd1lrjzOOeGKgPoAmEv@jjDvYogsr1aSslJVNohrfLVwvlNRcLWfE@S5hpvKJhn/@8s/@makIiLFDcDnzgJFYnrYq0oQ4UOaKAB6rwjC9PwU3wW2qiwPHot7hpwjisPcuyLXoFQKpELV2mihTHrVaupqUgtcYBd1pZNuzeqhUpd2sW4DRGgqDBCnx9f0lBN7CmBpuhyx2LKRTBCbmVGMTD0wPyrAUL@he@BoWvcYu/maBkOdRmh7DMtCQVRkzDfuy6rkJTZJNhXnn4RCFvEUngDpNmz3CbMtj6G@OVYV8GXYedJEhlmgeQilTqaBKKLdTCRrHmas6xck5FkowKizELGkNtOEJJhqfyaxuoVIC8msD/1MelIaHMoNtwWdN9nET6Su9jCm0weExAvyFfAtn5MoRm9wGgKCDWqHBVczqNMuVFssdblftdsZL96AtWmZkLluMDEQwBV7h@lo0RsdnuAKb9X8PIyu0ayC0YzQqzry/SFOuaEIamsdwtPGPcQVmivCL3gs8sHxlArnlb7naPpFmL/R3p@bGywxYltmdHx7/aknq3GLWuwGbAO/vhH6SD2FW@ggCUZmgVGANEn9WXQWCzOL61WloDWLSc3Iy6KJLlNF3FncEBvSimMhVqnQOCxA8eUZrgrQSHGTVmoWL2KOCzlLlbtBshgImoDwMoFqOgJBNTBLH0ghiKM2k0Lx1MwU5DKCAzNT/AgAPioQC2iG5iGMTQ2SH8LhEThmeM6CbhAZd0RqzEGxetRNqp9nO5MacJiWB7F6nuwLqjufo9iMEHw@yUmSw7pJcHr@2LQQaB41oE@ACIr42W6AYbrJ6zqHiDhm7Pt2CXOjKVqQP4CCB@ARjSihXgSd3jTYatGH4pEVGxkgGyrwFWFtlRmARMmAbFdXtiwVQ5oFW54uB8tqaayCNVlIFV9di2k7ZviK2Y8X7GoUqVjqnJ1IiulrGzuzd3WhC6hHZULiTvhJv/7SBzi5DijodHj9eUJxDFT9n780escOk82CEK41n4elDbTwGYeLrsURsXWWtzjZZhGL3E90SghLgrEKjgR64b5RaDNCK/GhEqUNXkuO7bJQLsW@DJFCos6@lnmmRopj8ay4WhEigevNLslm4Kyg@yjg2jxFJ/pwExSQ7vZgF0tFqDgEACCwPj@h8uqBtppFgR9FJU91bmBN9qz@vtq1WeQAX2vIpSkfN9G3F67aR7Sfj8NcWJKgD3veooZR5qy0KOiic1oE95L31KJ2BLBiR0vnX8cJ4WI1HSe@ibkLoYABw@b@qGDbz8yRC6JgRX4ARVAWWy9WCx6TtXQQapfXX0ykUSz2ALwMUiBAipJ1HCb4oV7/Bcvl87BjdxfRyXsPaakfDxGKQE8mRkDI1V45J1wQAwJdN6ewGFS87bkeWoLvgaTIf5B2LF3n8r6fE7U77NCMN7Pn7R5RqdLaYO8A0AHl9pKuN460U7pnzJ4fMxuSutzOszPkNje2FlI8EnEaBow6yvnMpQLUyH6L3m@kXHCBgSl6VUqRSLUT6iyerwEAeZHYxmY4Y0yj5PDykNvLTLaJfov8Juo1M5YS2b9/bOhTAS5um9ryeaGqMRD1F5lLm3//iEhHKcLeEIJX9RlrYGctJruko1GrY2XESDN/SsCmolDSWNhhb5IxYPCxfHSxziKBmB7PeAJr2UZ2E5OkQ5Yqoto7LJpzwip6dQXGPoBilrA6ZMPz2gBXYSujcfAgbMYsrcy3igf@m4jyqfwJ2/lUlCe1IjUbwqzIIsbv@i7eHGeudChh0dAJIsDFNSzyzUId339AhXsMp/St5nQijxJSY1euapQ2xZRVaUUXXT4SrMdJA8G4IswTVJxl0My5eiN6pLxSP79R5OV258YuXWkvg7h0wEEQaMF7FQRVQE3UCRfuK6sNnhIDteXgJGurA9/ZscnheNGgdrDIC2vwIOFzVGog@xCNoIxmpZEQtHMfICXyl0ixdYUTtXRpVofCQtU1ISTbhr1QSxTQeDxayAq7sBiLye6eaOzENQwi4KqFJ@MFR2vD71@SWaMoFkSJqdJVlFxiRXqqrHEnvP7U/BC4Bju2ZTqKxAQ8zBubdkNFlu6XSsnRWfqGpNbQdkJ3zdE5H3x85WMUywmRRxNwDZ6iD9HHQ3WlQnwJv@6tB5PAIwTNRJXOpkCYo3EqvaWW0FRIg8lJrUzEE5FTKnNIBeljDpPxpLHexc4@yAYoA5eGjttPn1e9oPOFDd7iqeJxtshJT7rqeE3DeUZimV5WAuGegmraT0RTORZPXsElXORpE7S9FtipMbmQxFLn8GUO/@VJh7S/Ve6XJOSSeRCP@sJyJ6gKF5HbNsMiCBBjjJiOVx48bbltxxQf6AM7qopDSIqosulUD0bh6jhLTivpJSp9QztJfnmjg0Okd6UoJQfRMX4TJhtvAWvi6Wy85VS8EbMiXKO1Mn04IoDuFYsMHQMTePKTCzkyePKZGlcWQRU@vJpntdTm5DIxQ@rEpQ9gyQpR9rVw7rVFD8DDOsOCa@gnVrIWRuSQfaa@swlCkTTw8oXxo@Tt0W0Sn3w6yzZeAU4@hI5icGTq2OHE0mcsjxyAeOmRYZfSOyZjkUoRwIFquqb@csE0e7Gl0ESaJLTlORAXBJAdl6Tng1C/0mezwwkTy7s1M4dBsIhbBnEov0c@lCG37onNyYvJtBgb0pLiA5DaB9ko5yhBiNiMOm/LAx8fZB05PWI5hcv4ZT3Oncj0kxWPQsWIpUwL9TaqtZkrpkfjH8ALnYCl@WNxnQLefD5O7GEu5qtDviggc20buL1HIAf25DnsrvzUAen1cZRSmSvdJgGla8mgkU2O/RdNr5ExyyJkIn5T4Ff49vEqEhaNSAkWiT/Oi2qCNV4Rq9FHoo3wikjUOUAUoWgoPwufN2Bkog9nOiOdDfiuy8kFQZq@0xzzVCOdE0d/Qb1BGlgx1Ou4WTrbtbUtgBIdNLc7XgojIHJ8MngfDoMia77ZcITYaEXuEqEhn9EnphgPoGx06ZThrjbl6QOfusIUzd3qmTZMwh8PpA6Uxg@xVSLQcTJMnurth/icKf6OGM8jompRgiRa/xAiCnOSjRy5TaTKqUhkS8pOHynr3RRFaYszcwFeWZbjAL550CdnQ9@eTibjo5Tj83Fh8y1y8UQeZ671A1SBRiqVAflME57CZLWPH@TGj7Y@jH0UQAuKyozjsD8/YfU1PWHNqBo6TUpbHCQA3xeniJ8V/xipgarjIhW1m52bL74J7ZLVqbZykqDy7pCeE8ebbEdpFrXYqaAxNqu3A8@M6U4w5rSn9/ASmhc1Xl7EWH9GplLO99Mon56e6Ndtn1js24@t@MYDgW/vnv5ont433O2nh3UD3fuOiPZqXcuEok9e5VV1Zel3l29//3378WP7xO8@fY@CC3q@6eM37dOHp//TU2vsRncqHb6nHO82aeTw6SuqfeMkyohevktjf2if//D8/jTMqbP8sqc@h3e1or9pvzrSh3aW@0ctzfvvfv/tt6mHT8J/go@Rx9BvI7@5WWXe8R08dfnt90D@Fku84O71CdnLbO@e//TmzT8/F@Wh84dnHvPD8/v3T018I/Xx/tdf/wc "Python 3 – Try It Online"
  • # [Python 3], ~~319~~ 318 bytes
  • ```python
  • print('riBfig,barBbilBdewBmulBtayBabiu,bael,date,lime,lulo,neem,noni,pear,pili,plum,rimu,sloe,sorb,yuzu,bearBblueBcranBcrowBemu BhackBjuneBlimeBpineBraspBwineBwolfByew Backee,akebi,apple,araza,cacao,caqui,carob,etrog,gấc,grape,guava,ilama,jagua,kokum,kubal,lemon,mango,melon,mundu,musho,nance'.replace('B','berry,'))
  • ```
  • [Try it online!][TIO-lmzg5d4n]
  • This works by representing `berry,` (including the comma) as `B`. This means every fruit that ends in "berry" can effectively save 5 bytes. It turns out there are enough berries to make the 22 byte cost of `replace` worthwhile.
  • This is the 55 shortest fruits measuring length after substituting "berry," with "B". I generated the code using this code: [Try it online!][TIO-lmzftgr9]
  • ---
  • *1 byte saved thanks to [msb's comment](https://codegolf.codidact.com/comments/thread/8512#comment-21966) which made me realise I was sorting the fruit by string length (which measures characters instead of bytes, making fruits with diacritics seem shorter than they really are).*
  • ---
  • ## My initial failed attempts
  • Before I found this approach I tried shortening the other two Python 3 answers, but in both cases my misguided efforts only made the code longer...
  • ### Trying to shorten [steffan153's answer](https://codegolf.codidact.com/posts/287088/287094#answer-287094)
  • I noticed that some of the fruits had diacritics, which makes them longer in bytes than they appear, so instead of just using the 55 shortest fruit by characters, I used the 55 shortest fruit after throwing away any fruit with diacritics, like gấc and açaí. However, since we've already used up all of the fruit of length 5 bytes or less, each diacritic fruit removed brings in another 6 byte fruit, so the total length of the code went up by a byte:
  • ```python
  • print('fig abiu bael date lime lulo neem noni pear pili plum rimu sloe sorb yuzu ackee akebi apple araza cacao caqui carob etrog grape guava ilama jagua kokum kubal lemon mango melon mundu musho nance ooray peach pequi pluot prune pudau rowan rukam salak salal tapia terap tilap toyon wongi almond babaco bacuri banana bignay')
  • ```
  • [Try it online!][TIO-l8r3k4fp]
  • ### Trying to shorten [Moshi's answer](https://codegolf.codidact.com/posts/287088/287095#answer-287095)
  • I thought I could save some bytes by using fewer distinct characters in the list of fruits, since all of these need to be listed in the `while` loop that extracts the data. So I repeatedly found the letter present in fewest fruits, and discarded all fruits containing that letter, stopping short of ending up with fewer than 55 fruits remaining. This left me with only 14 distinct characters, down from 16 in the original code. However, the 2 bytes this saved were overwhelmed by the fact that the new list of 55 fruits contained longer fruits, since I'd discarded some of the shorter ones, leaving the code 14 bytes longer:
  • ```python
  • from base64 import*
  • n=int.from_bytes(b85decode('5YBr@2zdh)fdaH`|L?o31mzCMMOw^}6Gp}*cGPdkWp!!fj9sk(ll2zIiI9x(m!Z#)4FT|UW1Q!@&rHc#p7PfklqbhsG`5TO^jF^L@qmX-@zKRADY>W*()(`#6^w=;IP9xHTgMq6GED;7>E#S9WNiB|2eKZ!HJ!qD(`e}qPwt+~b^KgJISyhSv!lv?ba68XFLI3{>}kf^>gaG928Ym{URfadB71USJH9{@PJ;Ya'),'big')
  • while n:print(end="ambling poetry"[n%14]);n//=14
  • ```
  • [Try it online!][TIO-l8r46k1t]
  • ---
  • In hindsight I have no idea why I thought either of my initial approaches would work.
  • [Python 3]: https://docs.python.org/3/
  • [TIO-l8r3k4fp]: https://tio.run/##HZBBdsMwCESvMru0655oJFNHFRKqLJrnXN4h3XyG1R8Y57pb/7quMUtfH7fvsoOpOBJFsXEJtLSAq6GLNHTrBUM4MYpGUm@YpTkONcFhM@H0p4O5ioBVUgHH0MiTTyIz04K/XoLTEmRN27FPDsHu/COKshE/jA3VahiqJypUmnU09t3QRN/Z@@bB4x712LPAbPJ8F8z34NsSFW1hTO@C4Rsd0x7smF7ZcFBZ/6lYHIVYElWwokTQzrA8rO9xhYZ9i88kZouRfZYYoSVS2TvP2@d1vQA "Python 3 – Try It Online"
  • [TIO-l8r46k1t]: https://tio.run/##FdDZUoJQAADQd79CZEqwxQERJQYkU1nUJNFRbCJALouyw7ig9utUz@ftxOfcjcJWWdppFFRNIwMkUfWCOErzRiVkvDB//pdv85yDDDG7bQtsIwsg9bbaTzm8sFzUtgxBv056UQsLirfpdHbUbiQf3xpbXrb2qxiC7B2V7RHfxwvRE6kTEkAbGCVGi@tyhX1A3H0qbOG4I9t7PzHdjNfbi5m2G2kTLgnWT1wxnr8OVHbVQFBEh0ntyNCiTJ2EhTNNSH44oDvsEFao1bvXv@JgvIEECUoGiA5uiXzMH35MbexIonJ2lQPkH3qmQXbXo4nYurC3va2xjsFTeFcNLsu5bVj9DrZUJIG6cLJEq0YdfaybnlNHK0fX80E1fInTvxMEhBZTMwLT90KnGkcgT8@1z/AOI75QOmw2GYwoy18 "Python 3 – Try It Online"
  • [TIO-lmzftgr9]: https://tio.run/##hVpNjuS4sd7rFEJtqhvuHMAwBngYoDe@xnjQoCSmxBRFaviT2SrDR5iNT2DDePBqFg@zm23BeOfwScZfBH8kVTdgVEGMCElkMBiM@ILKdQuTNX/47TfRfmyfnp5Ep2IjXv8pXn9uRC@d1QLtRP9oZykbcR0nYdp@ks5t4JzqwXbCdqJrry6qUIXpmdY6YUa5S6MPwg0Xsa56l2pL8raTwlTZgvfsmfNByv0Bq3S7Cr28GXeV0LcRYxRe/RhVI2bZ4aqFn0nVaPqpS9prLcdJmq1ddVzALtYMubloKe5yoM5cIzC4CD4S8WJNOzqxQvelE05qMtEisx2kiGHLvVehhulaqQfp3txZxJbNUCRvp1Tkq3ReLVDsIGKdC@eg69eGILkTfs1iM0YtXOuluFzVCN5Yo3gKSQ@6tvnZFT3YUNo8XmLO1nFwG1pZe72Sh2T2ofTQFps6EVQfl0svxtd/2MQbCNrBYr5OkOSFrj2eOyrsFmlUMWKWebG0o9RxjC4xMxhaYq/S8kMc5GI3dBjghAFLdugSjuaEVl@47d32YrANJKKnpo9OoZEaF6VpuaTGAnTiZqMTba@CY1aL8Pp3arW1JhuvI@cwo6D7Bn@5qV0wswrvlTVp@CzbYt/T03kdO/LlZPpEku6P4z0fRyxoWj5I3LOvj9c@tK4PLLwZOwndNPaiw@bE2NKNYsEa573aqdEIvKh07iETbS/6EH02GKRqgdk7ZW6CGtdP8ItrWgGwQwkToFVHNlIhSFdH4X2RFWO6PJ6YohxzSyy6MJumyOS@son3YrUh93iQ791ZO7TQXGayahNli5jhaNGJPq8OSfxDygAbaHiIn5IMvjXG9HYezM4TnDlraLW6k6ctNpogFG2S3poY6M4DY2Gp7dJZchCLWKWpdfb2@gvazUuT@8TmQGAo5mGOeoW6d7zhpBiymkRy9w73X/8JfyzbuHPRT7WLOAyTgKsglg/grleh7QW5wME54dyT1dQOclY50IBbpJc59HXUVxd5NfPIkNwRgFq2RCTz4LY9xW14j7BN9iF2kh4mUYFksGksfRFHYUPRK1pdoZUSxwjQU@SGO@Y@9B27EVEnuVKPgOBf/2YmorrYK2pjSxdQRgzqnAWqzEt3V73cpRgh7VcwClPQRARYKq40zAprWOvrC5RreqS2119MnYizHa5@ko@2aIc4rpwVRHmRo0MvQtByywvaC/iMSz7ai4eEMXs5QNKJraxgL5cVshmECdLAQLq9C6fkiNA3tHNcfowCGuBhQTGWLSU3TdnroPREGQGxgKhVC0VDwX1VP0XMvKHBFAfSMmzK6VILKUYTfRFoER3ZJ6f8a4u42zplyV/MIMsNdqV@Uv2MuP3YWVsMNilEkOLY4Az5HBx@6WpeqtKDPxcZeUExdBYNsEdlrto@MCMzvnmIzMOh6@BG5VbWkRkssen3e2ePKUJkh7d6PSYVZF6ECREAKUO2d9yr87az3F8Ck/tMOSY1xRm1RE5E@oQecMUhP6ntfe9BI8fR1kSK761wZAY7ABxc0jqVUa0AFtNvpmH7eSvmgartIDGwa0rgojbZhNN9ecnsg1szFxiCR4Fc2LLe2EcROiM5ftU3nH2xR9zTI2KINiGY7AsUQN12yYACrEOSVHC5w5LD1/IQoGSxl5MyJwwiV1r9PWdAZPwEXywPVy3jQIkB7RqBiBE7cgKhdiu@GF3soFzCtEWNyPjo5EwxsETekWmhxAnP9FuPeKeqOQaxeKiCDX8XL0lx0A9lEK8rMGC3psslP3BXw7PP2Jc59FGwwCAe255eB@QICsu4e4UxgCwh0qpXFmF5t8wAx3WhILjC5WySWXKwTHK0ynTWIjGIQ2ZAlgSfTTvYsepiY3dc@ME@AMdPDollGG2JqInJdBzxj4ZyHRo/54wwxNBPaYLw90EYMgGy7bW9AQptp/FYTCD5sCBZGD3jyWIAFm4iiFMHUtBOM4e1LhKAe/hVZYMUqXc5juXdHa9LLVfE4pBdSOqF/eWglEQIVD2aWJ4BlW@ZcUbKbCSixNjI6OxKQfSQrHbZvluqrK7LLuG55iWqUnalyp0Liypm1M@rcJXPqs357SrVzVIDnEnAl/3jqjpHLuepFiBARd6UPDJ5U6IxTg6DV3WXpfI454QrAuoDYC77O8K8SyGyvnqQ1JU6ZIO0xlcL5zsVBVf7OUOea7ypYpLx37/@b9@MVETkuAH43FmgSEwPe1UJInzMEwVA7xVBmJ6f4rvAVgfLg8finiHniOKw9K7INSiVAqlQtTZaKJNftZq6mtQCF9jEsdLJt2b1ULlLu1gXABGaAwZI0@NrfsqJLQewPF2OWGzZRGaIzcwoRqYemB8VYKjf0D1wNK17it18zYOhTiO0PcZloSAqCuYbt2VV8pKaLJuq809CIYt4Ck@AdAHbfcJs62Oob/ZVBXwZNp40kXEWaB5CqZNpIEpotxDZmrsZj/ULEvIsFGDUWYhYcjTThCSYa38msbqVyAvJrI/9THpSGhzqDReiLpts4idyV1sc8@kDQuIF@Qr4ls9JFKM3OA0BwQa1w4KrGdRpF6qQSl3uV212xos3YG1aJmSuG0wMBHDF3mE6WfRGhye4wls1Pw@jazSrYDQj9Kr2fL@Lc26ogqO1duFp4@7iA5qrwi94LPLO8ZQq55W@l2j6RZi/0d6fmxssMWJbFnR8e/25J6txi1rsBmwDv74R@sg9xVvsIIlGFoFRgDRZ/Vl0Fgszi@tV5aA1i0nNyMuiSS5ziLizuCE25BXHQqxSoXFYgOrLM1wVoJHiJq3ULF7EnBZylqp0g2QxEDQB4WUG1XQEgmpglj6SQhAnbSaF4qmZKcgVBAdmpvgRAXxUJBbQDM1DGJsbJD@Ewz1wzPCcBd0gMm6I1JiDYvWom1w/z3YmNeAwLQ9i9TzZF1R3vkSxGSH4fJKTJbt1s@D0/L5pIdA8akSfABEU8YvdAMN0U9Z1jglxzNj37RLnRlO0IH8ABQ/AIxpRQr0IOr1psNWSD6UjKzYyQDZU4CvC2ioLAEmSAdnuWNmyVAx5Fmx5uuwsq6WxCtYUIVV8x1pM27HAV8x@vGBXo0jFUpfsRFJMX9vUmb2rC11APQ4mJO6En/Trr32Ek@uIgk7H118mFMdA1f//10Zv2GGyWRDCtebzsLyBFj7jcMm1OCK2zvIWJ9ssYpHbic4JYckwVsGRQC/cNwptRmg1PhxEeYMfJft2WSiXYl/GRCFRF18rPFMjxbF0VnxYESKB680myWbgrKD7KODaMkUn@ngTFJDudmcXS0Wo2AUAILA@P6HK6oG2mkWRH0UlT3VuZE22ov622rVZ5ABfa8ilKR83ybcXrtpHtJ/3w1xYkqAPe96ihlGWrLQo6KJLWgT3UvbUojYEsGpHS@df@wnhYjUdJ76JuQuhgAHDlv6oYNvOzJ4LkmBFfgBFUBZbL1ULHpO1dBBql9dfTaJRLPYAvAxSIECKksc4TPBDvf4fLFfOw/bdXUUn792ltX7cRSgCPZkYAaFUe/WccEEMiHQNTmExqHjbSj20RN8DSZH/IO1Yus71fT9nanPYoQVvFs/bPKLSQWuDvQNAB5TbS7reONJO@Z4xW3nMBCR1Gc6zM@Q2N7YWUjwScR4GjNrL@cLlAtTIPiTvN1IuuMDAFL0OSpFItRPqLJ6vAQB5kdjGZjhjTKPk8PKQ4WUm2yS/RX4TxzUzlhLZv35q6FMBLi5Mbf28cKgxEPUXWUqbf/2ESEcpwt4Qglf1GWtgZy0mu@SjUatTZcRIs3xKwKaiUNJY2GFrsjFg8LF@dLHOIoGYHs94AmvFRjaISdIhyyGi2jssWnLCKnp1BcbegWKRsDpkw/PaAFdhK6Nx8CBsxiI9mG8VD/w3CeVT@RPD@VSUJ7UiNRvCrMgixm/6Lt4cZ650KGHR0AkiwMU1LvLNQu3ff0DFewqn9K3mdCKPElJjV65qlDbHlFVpRRddPxKs@0kDwbgqLBNUnGXQzKV6I3qkvHJ8PlDk5Xbjxi5dbS@DuHTAQRBowXsVBFVATdIJF@6rqA2eEgO19eCkaKsj39mwyeF4yaB2sMgLa/Qg4XNUaiD7EI2gjGalkRC0Sx8gJfKXyLF1hRO1dGlWh8JCHWtCSELAXjhKFNB4OlooCru4GIvJbp5o7MQ1DiLiqoUn40VHa8PvX7JZkygVRJk5pKskuaSK9FRZ4058/bn5MXINtm/LfBSJCXiYNzVtQEWW79dKydFZekBSa2g7obtm75wPPr7yMYrlhMiTCbgGz9GH6P2hY6VCfA2/7q0Hk8AjBM1E1c6mSJijcSq/pZbYHJAGk5NamUgnIqdU5pAK8sccJtNJ43EXO/sgG6AMXBo6bj99XvWCzhcCvMVTxeNslZOedNXpmofzjMQKvawEwj0F1byfiKZyLJ28gsu4yNMmaHstsFNTciGJpc7hyxz@65MOaT8c3C9LyCXLIB71heVOUBUuorRtgUUQIMYYMe2vPHjaMoR9ig/0gR11iENIiqiy6VQPRuHquEhOK@klKn1DO0l@eaODQ@R3paglB9EpfhMmG28Ra@LpbLzlVByIWRGu0VqZPxwRQPeKRYaOgQk8@cnFEhk8@cwRV1bBIXx4Nc9qOZqTy8QCqTOXP4BlKyTZ18K51xY9AA/rAguusZ9YyaMwIYfiM8c7QRCKpIGXL4yfJG@PbrP45NNFFngFOPkQOkrBkal9hxNLn7E8cgDipUeGXWrvmIxFKkUAB6rpmuOXC6bZiy2FJtIkoy3PgbgigOK4JD0fhPqVPpvtTphZ3q2F2Q2CRQwFxKH8HvlQhty6J7YkLybzYgSkJcUHIEcfZKOcowQhYjPqsi13fLyTx8jpEcspXKYv62nuROafrHgUKkYsdVqot1GtzVwxPRr/AF7oBCzNH4uPKeDN5@PM7uZi/nDIlwRkrhDAbT0CObAnz2Fz9acOSK@PvZQqXO02CyhdSwaNbHLsv2R6jYxZF6EQ6ZsCv8K391eRsGhESrBI/GleVBOs6YpYjT4ybYRXRKLOAaKIVUP5WfiyAROTfLjQBekE4LuuJBcEafpOs89TjXROnPwF9QZpYMVwXMdg6WzXHm0BlOigud3wUhwBkdOT0fu4GxRZ882GI8RGK3KXCA3ljD4z1XgAZaPLpwx3FZSnD3zqClM0d6tn2jAZfzyQOlAaP0Q4iECnyTB5qrcf4nOh@DtiOo9IqiUJkujxhxBJWJJs4shtElVPRRJbU3b@SHncTUmUtzgzF@CVZdkP4JsHfXI29O3pZDI@Stk/H1e23CIXz@R@5np8gCrQROUyoJxpwlOYPOzjB7nxoz0exj4qoAVFZcZ@2F@esPqan7BmVA2dJuUtDhKA74tTxM@Kf4zUQNVxkYraYOfmi29Cm2R1Dls5S1B5d0jPmeNNtqE0S1psVNAYW9TbgGfGfCcac9rTW3yJzYsaLy9iPH5GplLO99Mon56e6Ndtn1js24@t@MYDgYd3T38yT@8b7vbTw7qB7n1PRHu1rmVC0Sev@qq6svT7y7ff/dB@/Ng@8btPP6Dggp5v@vhd@/Th6b/01Bob6M5Bhx8ox7sgjRw@fUW1b5xEGdHLd3nsD@3zH5/fn4Y5dVZe9tTn8O6o6O/ar470oZ3l9lHDoQfRfv5OS/Pu8zcSmXHAoDFcL//z9P79@@@/@/bb3Psn4T/B/8ib6HeT39ysMu/4Dp66/P4HVAUWy7/g7vUJmc2Ed89/fvPmX57rxDCfD8@sz4fn9@@fmvRG7uP9b7/9Bw "Python 3 – Try It Online"
  • [TIO-lmzg5d4n]: https://tio.run/##FY/LbcRQCEVbmZ1nJJRNOqAT3jNjM@Z9gk0sTz9pIt2kEgdvjg666Ar6sc2tfp5nN6nbfTDBp0yQyDCJ4sg7Flfc6EBK4hGwwkgbg0oJuDaozAVqqwKdyaCLhqkXMCkOqzaGtVmCw99RwFe1OmM2qoG2Ixe/4Ux5wZdXxqsZu4QZrR33y/amTzx4v2GsMQMtnASodw03ehNkytSCXy5Bawl4szbB9Pf7k2Ey6gyT0zeBKBWCF8UES1vi0MUTKSiXVqFQnRoU1su9jh5c5/iSaubhw7grZb4POMCQ2OyA4fE4z38 "Python 3 – Try It Online"
#1: Initial revision by user avatar trichoplax‭ · 2022-10-02T09:51:49Z (over 1 year ago)
# [Python 3], 319 bytes

```python
print('riBfig,gấc,barBbilBdewBmulBtayBabiu,açaí,bael,date,lime,lulo,neem,noni,pear,pili,plum,rimu,sloe,sorb,yuzu,bearBblueBcranBcrowBemu BhackBjuneBlimeBpineBraspBwineBwolfByew Backee,akebi,apple,araza,cacao,caqui,carob,etrog,grape,guava,ilama,jagua,kokum,kubal,lemon,mango,melon,mundu,musho'.replace('B','berry,'))
```

[Try it online!][TIO-l8r2su8j]

This works by representing `berry,` (including the comma) as `B`. This means every fruit that ends in "berry" can effectively save 5 bytes. It turns out there are enough berries to make the 22 byte cost of `replace` worthwhile.

This is the 55 shortest fruits measuring length after substituting "berry," with "B". I generated the code using this code: [Try it online!][TIO-l8r5md6s]

[Python 3]: https://docs.python.org/3/


## My initial failed attempts
Before I found this approach I tried shortening the other two Python 3 answers, but in both cases my misguided efforts only made the code longer...

### Trying to shorten [steffan153's answer](https://codegolf.codidact.com/posts/287088/287094#answer-287094)
I noticed that some of the fruits had diacritics, which makes them longer in bytes than they appear, so instead of just using the 55 shortest fruit by characters, I used the 55 shortest fruit after throwing away any fruit with diacritics, like gấc and açaí. However, since we've already used up all of the fruit of length 5 bytes or less, each diacritic fruit removed brings in another 6 byte fruit, so the total length of the code went up by a byte:

```python
print('fig abiu bael date lime lulo neem noni pear pili plum rimu sloe sorb yuzu ackee akebi apple araza cacao caqui carob etrog grape guava ilama jagua kokum kubal lemon mango melon mundu musho nance ooray peach pequi pluot prune pudau rowan rukam salak salal tapia terap tilap toyon wongi almond babaco bacuri banana bignay')
```

[Try it online!][TIO-l8r3k4fp]

### Trying to shorten [Moshi's answer](https://codegolf.codidact.com/posts/287088/287095#answer-287095)
I thought I could save some bytes by using fewer distinct characters in the list of fruits, since all of these need to be listed in the `while` loop that extracts the data. So I repeatedly found the letter present in fewest fruits, and discarded all fruits containing that letter, stopping short of ending up with fewer than 55 fruits remaining. This left me with only 14 distinct characters, down from 16 in the original code. However, the 2 bytes this saved were overwhelmed by the fact that the new list of 55 fruits contained longer fruits, since I'd discarded some of the shorter ones, leaving the code 14 bytes longer:

```python
from base64 import*
n=int.from_bytes(b85decode('5YBr@2zdh)fdaH`|L?o31mzCMMOw^}6Gp}*cGPdkWp!!fj9sk(ll2zIiI9x(m!Z#)4FT|UW1Q!@&rHc#p7PfklqbhsG`5TO^jF^L@qmX-@zKRADY>W*()(`#6^w=;IP9xHTgMq6GED;7>E#S9WNiB|2eKZ!HJ!qD(`e}qPwt+~b^KgJISyhSv!lv?ba68XFLI3{>}kf^>gaG928Ym{URfadB71USJH9{@PJ;Ya'),'big')
while n:print(end="ambling poetry"[n%14]);n//=14
```

[Try it online!][TIO-l8r46k1t]

---

In hindsight I have no idea why I thought either of my initial approaches would work.

[Python 3]: https://docs.python.org/3/

[TIO-l8r2su8j]: https://tio.run/##FY/NbcMwDEZXyc0JQPTSDbgJZTO2YkpUabOGs0/RUxfoNZN0Epe@PDziI/jT9nXS@n4czXJdr51lvOcRxr/frx4SGaYsOPCGxQVX2pFSdqDXN71@ImeBgVYGySXgolCZC1StGRqTQcsSJl7AcnFYRBkWtQS7Px0SnxvEGXujGtANufgFJ@pnfHhlPCdjy2FGS8PttE3ljjtvF4w2ZqCZUwZqTcKNngQ99aTBD89B0wS8msZfRo1hdPokyEKF4EFRwaxznDh7IgHhohUK1VGhsJzudfDgMmn3ZtyEer522EGX2GyH7nY7jn8 "Python 3 – Try It Online"

[TIO-l8r3k4fp]: https://tio.run/##HZBBdsMwCESvMru0655oJFNHFRKqLJrnXN4h3XyG1R8Y57pb/7quMUtfH7fvsoOpOBJFsXEJtLSAq6GLNHTrBUM4MYpGUm@YpTkONcFhM@H0p4O5ioBVUgHH0MiTTyIz04K/XoLTEmRN27FPDsHu/COKshE/jA3VahiqJypUmnU09t3QRN/Z@@bB4x712LPAbPJ8F8z34NsSFW1hTO@C4Rsd0x7smF7ZcFBZ/6lYHIVYElWwokTQzrA8rO9xhYZ9i88kZouRfZYYoSVS2TvP2@d1vQA "Python 3 – Try It Online"

[TIO-l8r46k1t]: https://tio.run/##FdDZUoJQAADQd79CZEqwxQERJQYkU1nUJNFRbCJALouyw7ig9utUz@ftxOfcjcJWWdppFFRNIwMkUfWCOErzRiVkvDB//pdv85yDDDG7bQtsIwsg9bbaTzm8sFzUtgxBv056UQsLirfpdHbUbiQf3xpbXrb2qxiC7B2V7RHfxwvRE6kTEkAbGCVGi@tyhX1A3H0qbOG4I9t7PzHdjNfbi5m2G2kTLgnWT1wxnr8OVHbVQFBEh0ntyNCiTJ2EhTNNSH44oDvsEFao1bvXv@JgvIEECUoGiA5uiXzMH35MbexIonJ2lQPkH3qmQXbXo4nYurC3va2xjsFTeFcNLsu5bVj9DrZUJIG6cLJEq0YdfaybnlNHK0fX80E1fInTvxMEhBZTMwLT90KnGkcgT8@1z/AOI75QOmw2GYwoy18 "Python 3 – Try It Online"

[TIO-l8r5md6s]: https://tio.run/##hVpNjuW4Dd77FEZtqhvpN0AQzCZAb3KNyaAh23q2nmXJI1nvtSvIEWaTEyQIgqxmEcxutoUg58hJJh@pH8vVDQRVsEjaliiKIj/Kb923yZrf/fqraD@2T09PolOhEa//FK8/NaKXzmqBdqJ/tLOUjbiOkzBtP0nndnBO9WA7YTvRtVcX1FaE8ZnWOmFGeUiD34QbLmJd9SHVluRtJ4UpsgXv2TPnNymPB6zS7Sr08mbcVULfRoxBePVDUI2YZYerFn4mVYPppy5qr7UcJ2n2dtVhAbtYM6TmoqW4y4E6c43A4GLzgYgXa9rRiRW6L51wUpOJFpnsIEXY9tR7EWqYrpV6kO7NnUXsyQxZ8nZKWb5K59UCxSoR65w5B12/NgTJnfBrEpsxaOFaL8XlqkbwxhrFU4h60LVNz67owW65TeNF5mwdB7ehlbXXK3lIYh9KD222qROb6sNy6cX4@ncbeQNBO1jM1wmSvNC1x3O1wm6RRmUjJpkXSztKHcbgIjODoSX2Ki4/xJtc7I4ONzjhhiWruoSjOaHVF257t70YbAOJ6Knpg1NopMZFaVouqbEAnbjZ4ETbq80xq8X2@jdqtbUmGa8j5zCjoPsGf6kpXTCzCu@VNXH4JNtD39PTaR078uVo@kiS7o/6ng8jFjQuHyTu2ZfHSx9alwcW3oydhG4ae9Fhc2Js6UaxYI3TXu3UaAReVDr1kIi2F/0WfDIYpGqB2TtlboIa10/wi2tcAbBDDhOgVUc2UtsmXRmF90VSjOn8eGSycswtIevCbJwik8fKRt6L1W6px0p@dGft0EJzmciiTZAtYoajRSf6vDok8Q8pN9hAw0P8FGXwrTHEt9Ngdp7gzElDq9WdPG2xwWxC0SbprQkb3XlgLCy1XTpLDmIRqzS1zt5ef0a7e2lSn9gcCAzZPMxRr1D3jjecFENSk0ju3uH@6z/hj3kbdy74qXQRhmEScBXE8gHc9Sq0vSAXODgnnHuymtpBzioFGnCL9DKFvo766gKvZhoZkjsCUMuWCGQe3LanuA3vEbZJPsRO0sMkaiMZbBpyX8RR2FD0ilZXaKVEHQF6itxwx9SHvmM3IupEV@oREPzrX81EVBd6RW1o6QLKiEGds0CReenuqpeHFCPE/QpGYQqaiA2WCisNs8Ia1vryAuWaHqnt9WdTJuJsh6uf5KPN2iGOK2cFUV6k6NCLbdNyTwvaC/iMiz7ai4eEMXs5QNKJPa9gL5cVshmE2aSBgXR7F07JEaFvaOew/BAENMDDgmIsW0rumrJXpfREGQGxgKhVC0VDwX1VPwXMvKHBFAfSPGzM6VILKUYTfBZoERzZJ6X8a4u42zplyV/MIPMNdqV@Uv2MuP04WJsNNilEkOzY4Az5HBx@6UpeKtLKn7OMvCAbOokG2KMwV20fmJEZ3zxE5uHQVblRvpV0ZAZLbPrj3tljshDZ4a1ej0ltMi3ChAiAlCHbO@6VedtZHi@BSX3GHBOb7IxaIicifUIPuOKQntT2fvSgkeNoayLF91Y4MoMdAA4ucZ3yqFYAi@k307D9vGfzQNV2kBjYNTlwURttwuk@v2SOwa2ZMwzBo0AubFlv7CMLnZEcv8obzr7YGvf0iBiijQgm@QIFULdfEqAA65AkFVyuWnL4WhoClMz2clKmhEHkSqt/5AyIjJ/gi/nhomUYKDGgXQMQMWJHSiDU7tkXgwsdlIuYNqsRGB@dnClsLJF3ZFooccIz/d4j3qlijkEsHqpgw9/FS1Qc9EMZxOsCDNit6XJJD9zV8OwT9mUOfWQsMIjHfqTXATmCwjLuXmEMIEuItOqVRVg@LDPAcd2WEVzmUjZJLDlYIjlaJTppERnEITMgS4JPph3sWHSxoasXfrAPwPGTQ2IZRpsjamQSHUb8o6Fch8bPKSMMYeunOEH4@yAMmQDZ9treAIX203gsJpBcLUgSBs94MhuAhbvYxKkDKWinmWqtswTgHn5V2E2K2Lscx/zugdelliti8ZZcSOqF/aVSSiIEqh5NyM@ASrfMOCNlNhJRYmxkcHalIFolq0N27JYiK@tySHiuaYmKlF2pcOfCoogZ9fMqXOWzalN@u0p1s9QAZxLwZf@4qs6Ry3mqBQhQkTdFj4zeFGmMk8LgVd1lrjzOOeGKgPoAmEv@jjDvYogsr1aSslJVNohrfLVwvlNRcLWfE@S5hpvKJhn/@8s/@makIiLFDcDnzgJFYnrYq0oQ4UOaKAB6rwjC9PwU3wW2qiwPHot7hpwjisPcuyLXoFQKpELV2mihTHrVaupqUgtcYBd1pZNuzeqhUpd2sW4DRGgqDBCnx9f0lBN7CmBpuhyx2LKRTBCbmVGMTD0wPyrAUL@he@BoWvcYu/maBkOdRmh7DMtCQVRkzDfuy6rkJTZJNhXnn4RCFvEUngDpNmz3CbMtj6G@OVYV8GXYedJEhlmgeQilTqaBKKLdTCRrHmas6xck5FkowKizELGkNtOEJJhqfyaxuoVIC8msD/1MelIaHMoNtwWdN9nET6Su9jCm0weExAvyFfAtn5MoRm9wGgKCDWqHBVczqNMuVFssdblftdsZL96AtWmZkLluMDEQwBV7h@lo0RsdnuAKb9X8PIyu0ayC0YzQqzry/SFOuaEIamsdwtPGPcQVmivCL3gs8sHxlArnlb7naPpFmL/R3p@bGywxYltmdHx7/aknq3GLWuwGbAO/vhH6SD2FW@ggCUZmgVGANEn9WXQWCzOL61WloDWLSc3Iy6KJLlNF3FncEBvSimMhVqnQOCxA8eUZrgrQSHGTVmoWL2KOCzlLlbtBshgImoDwMoFqOgJBNTBLH0ghiKM2k0Lx1MwU5DKCAzNT/AgAPioQC2iG5iGMTQ2SH8LhEThmeM6CbhAZd0RqzEGxetRNqp9nO5MacJiWB7F6nuwLqjufo9iMEHw@yUmSw7pJcHr@2LQQaB41oE@ACIr42W6AYbrJ6zqHiDhm7Pt2CXOjKVqQP4CCB@ARjSihXgSd3jTYatGH4pEVGxkgGyrwFWFtlRmARMmAbFdXtiwVQ5oFW54uB8tqaayCNVlIFV9di2k7ZviK2Y8X7GoUqVjqnJ1IiulrGzuzd3WhC6hHZULiTvhJv/7SBzi5DijodHj9eUJxDFT9n780escOk82CEK41n4elDbTwGYeLrsURsXWWtzjZZhGL3E90SghLgrEKjgR64b5RaDNCK/GhEqUNXkuO7bJQLsW@DJFCos6@lnmmRopj8ay4WhEigevNLslm4Kyg@yjg2jxFJ/pwExSQ7vZgF0tFqDgEACCwPj@h8uqBtppFgR9FJU91bmBN9qz@vtq1WeQAX2vIpSkfN9G3F67aR7Sfj8NcWJKgD3veooZR5qy0KOiic1oE95L31KJ2BLBiR0vnX8cJ4WI1HSe@ibkLoYABw@b@qGDbz8yRC6JgRX4ARVAWWy9WCx6TtXQQapfXX0ykUSz2ALwMUiBAipJ1HCb4oV7/Bcvl87BjdxfRyXsPaakfDxGKQE8mRkDI1V45J1wQAwJdN6ewGFS87bkeWoLvgaTIf5B2LF3n8r6fE7U77NCMN7Pn7R5RqdLaYO8A0AHl9pKuN460U7pnzJ4fMxuSutzOszPkNje2FlI8EnEaBow6yvnMpQLUyH6L3m@kXHCBgSl6VUqRSLUT6iyerwEAeZHYxmY4Y0yj5PDykNvLTLaJfov8Juo1M5YS2b9/bOhTAS5um9ryeaGqMRD1F5lLm3//iEhHKcLeEIJX9RlrYGctJruko1GrY2XESDN/SsCmolDSWNhhb5IxYPCxfHSxziKBmB7PeAJr2UZ2E5OkQ5Yqoto7LJpzwip6dQXGPoBilrA6ZMPz2gBXYSujcfAgbMYsrcy3igf@m4jyqfwJ2/lUlCe1IjUbwqzIIsbv@i7eHGeudChh0dAJIsDFNSzyzUId339AhXsMp/St5nQijxJSY1euapQ2xZRVaUUXXT4SrMdJA8G4IswTVJxl0My5eiN6pLxSP79R5OV258YuXWkvg7h0wEEQaMF7FQRVQE3UCRfuK6sNnhIDteXgJGurA9/ZscnheNGgdrDIC2vwIOFzVGog@xCNoIxmpZEQtHMfICXyl0ixdYUTtXRpVofCQtU1ISTbhr1QSxTQeDxayAq7sBiLye6eaOzENQwi4KqFJ@MFR2vD71@SWaMoFkSJqdJVlFxiRXqqrHEnvP7U/BC4Bju2ZTqKxAQ8zBubdkNFlu6XSsnRWfqGpNbQdkJ3zdE5H3x85WMUywmRRxNwDZ6iD9HHQ3WlQnwJv@6tB5PAIwTNRJXOpkCYo3EqvaWW0FRIg8lJrUzEE5FTKnNIBeljDpPxpLHexc4@yAYoA5eGjttPn1e9oPOFDd7iqeJxtshJT7rqeE3DeUZimV5WAuGegmraT0RTORZPXsElXORpE7S9FtipMbmQxFLn8GUO/@VJh7S/Ve6XJOSSeRCP@sJyJ6gKF5HbNsMiCBBjjJiOVx48bbltxxQf6AM7qopDSIqosulUD0bh6jhLTivpJSp9QztJfnmjg0Okd6UoJQfRMX4TJhtvAWvi6Wy85VS8EbMiXKO1Mn04IoDuFYsMHQMTePKTCzkyePKZGlcWQRU@vJpntdTm5DIxQ@rEpQ9gyQpR9rVw7rVFD8DDOsOCa@gnVrIWRuSQfaa@swlCkTTw8oXxo@Tt0W0Sn3w6yzZeAU4@hI5icGTq2OHE0mcsjxyAeOmRYZfSOyZjkUoRwIFquqb@csE0e7Gl0ESaJLTlORAXBJAdl6Tng1C/0mezwwkTy7s1M4dBsIhbBnEov0c@lCG37onNyYvJtBgb0pLiA5DaB9ko5yhBiNiMOm/LAx8fZB05PWI5hcv4ZT3Oncj0kxWPQsWIpUwL9TaqtZkrpkfjH8ALnYCl@WNxnQLefD5O7GEu5qtDviggc20buL1HIAf25DnsrvzUAen1cZRSmSvdJgGla8mgkU2O/RdNr5ExyyJkIn5T4Ff49vEqEhaNSAkWiT/Oi2qCNV4Rq9FHoo3wikjUOUAUoWgoPwufN2Bkog9nOiOdDfiuy8kFQZq@0xzzVCOdE0d/Qb1BGlgx1Ou4WTrbtbUtgBIdNLc7XgojIHJ8MngfDoMia77ZcITYaEXuEqEhn9EnphgPoGx06ZThrjbl6QOfusIUzd3qmTZMwh8PpA6Uxg@xVSLQcTJMnurth/icKf6OGM8jompRgiRa/xAiCnOSjRy5TaTKqUhkS8pOHynr3RRFaYszcwFeWZbjAL550CdnQ9@eTibjo5Tj83Fh8y1y8UQeZ671A1SBRiqVAflME57CZLWPH@TGj7Y@jH0UQAuKyozjsD8/YfU1PWHNqBo6TUpbHCQA3xeniJ8V/xipgarjIhW1m52bL74J7ZLVqbZykqDy7pCeE8ebbEdpFrXYqaAxNqu3A8@M6U4w5rSn9/ASmhc1Xl7EWH9GplLO99Mon56e6Ndtn1js24@t@MYDgW/vnv5ont433O2nh3UD3fuOiPZqXcuEok9e5VV1Zel3l29//3378WP7xO8@fY@CC3q@6eM37dOHp//TU2vsRncqHb6nHO82aeTw6SuqfeMkyohevktjf2if//D8/jTMqbP8sqc@h3e1or9pvzrSh3aW@0ctzfvvfv/tt6mHT8J/go@Rx9BvI7@5WWXe8R08dfnt90D@Fku84O71CdnLbO@e//TmzT8/F@Wh84dnHvPD8/v3T018I/Xx/tdf/wc "Python 3 – Try It Online"