পাইথন 2, 14508 11700 11088 10164 9486 9746 7860 145 বাইট * 36 অনন্য = 5220
আমি শিরোনামটি দেখেছি এবং ভেবেছিলাম এটি বরং শব্দযুক্ত পাইথনের জন্য একটি আকর্ষণীয় চ্যালেঞ্জ। আমি এই সমস্যাটি মোকাবেলায় এগুলি আমার নোট।
আমার প্রথম চেষ্টাটি অসুবিধাগুলি হ্রাস করে 31:
print''.join(chr([69,108,105,122,97,98,101,116,104,32,111,98,110,111,120,105,111,117,115,108,121,32,113,117,111,116,101,100,32,40,106,117,115,116,32,116,111,111,32,114,111,119,100,121,32,102,111,114,32,109,121,32,112,101,97,99,101,41,58,32,34,84,72,69,32,81,85,73,67,75,32,66,82,79,87,78,32,70,79,88,32,74,85,77,80,83,32,79,86,69,82,32,84,72,69,32,76,65,90,89,32,68,79,71,44,34,32,103,105,118,105,110,103,32,109,101,32,97,32,108,111,111,107,46][r])for r in range(124))
আমি ভেবেছিলাম আমি আরও ভাল করতে পারি। ব্যবহার করে map
, অদ্ভুততা নেমে এসেছে 26:
print''.join(map(chr,(69,108,105,122,97,98,101,116,104,32,111,98,110,111,120,105,111,117,115,108,121,32,113,117,111,116,101,100,32,40,106,117,115,116,32,116,111,111,32,114,111,119,100,121,32,102,111,114,32,109,121,32,112,101,97,99,101,41,58,32,34,84,72,69,32,81,85,73,67,75,32,66,82,79,87,78,32,70,79,88,32,74,85,77,80,83,32,79,86,69,82,32,84,72,69,32,76,65,90,89,32,68,79,71,44,34,32,103,105,118,105,110,103,32,109,101,32,97,32,108,111,111,107,46)))
প্রায় এই সময়ে, আমি প্রশ্ন পাঠ্যে লক্ষ্য করেছি যে স্কোরটি ছিল uniques * bytes
, কেবল অজানা! তার মানে আমার উপরের স্কোরগুলি 14508 এবং 11700 ছিল very খুব প্রতিযোগিতামূলক নয়। সুতরাং আমি এখন হেক্স স্ট্রিং হিসাবে পাঠ্য সংরক্ষণ করে বাইটগুলি হ্রাস করেছি:
# 308*36 = 11088
print''.join(chr(int('456c697a6162657468206f626e6f78696f75736c792071756f74656420286a75737420746f6f20726f77647920666f72206d79207065616365293a202254484520515549434b2042524f574e20464f58204a554d5053204f56455220544845204c415a5920444f472c2220676976696e67206d652061206c6f6f6b2e'[i*2:i*2+2],16)) for i in range(124))
আকার হ্রাস করা হয়েছে তবে আরও অনন্য অক্ষর। তবে যদি আমি 32 অফসেট সহ প্যাকযুক্ত 2 ডিজিটের দশমিক স্ট্রিং ব্যবহার করি:
# 308*33 = 10164
print''.join(chr(int('37767390656669847200796678798873798583768900818579846968000874858384008479790082798768890070798200778900806965676909260002524037004953413543003450475546003847560042534548510047543750005240370044335857003647391202007173867378710077690065007679797514'[i*2:i*2+2])+32) for i in range(124))
এটিতে একই সংখ্যক বাইট রয়েছে তবে 3 টির কৌশল সংরক্ষণ করে।
আমি একটি নতুন পরিকল্পনা হ্যাচ। যদি আমি 7 টি বিট অক্ষর দিয়ে পাইথন দীর্ঘ পূর্ণসংখ্যার বস্তুটি প্যাক করি তবে আমি স্থানান্তরিত করে প্রত্যেকে বের করতে পারি:
# 306*31 = 9486
h=1073974643401006528619595312441225198653732186368270382545648881135648217524502741093886285232362673460172159947573049818819511630304840724474679255867143965214892747087773876949021986013520804726327302180335979259392708372721217579101211940864406962137554744750
w=''
while h:w=chr(h&127)+w;h>>=7
print w
ওয়েল এটি স্কোর হ্রাস করেছে 9486 এ। একটি আকর্ষণীয় পরীক্ষা, তবে কোথাও যথেষ্ট ভাল নেই। এখন আমি যদি ফাংশনটির নামগুলি থেকে মুক্তি পেয়ে স্ট্রিং ফর্ম্যাটিংয়ের উপর নির্ভর করি?
# 443 * 22 = 9746
print('%c'*124)%(69,108,105,122,97,98,101,116,104,32,111,98,110,111,120,105,111,117,115,108,121,32,113,117,111,116,101,100,32,40,106,117,115,116,32,116,111,111,32,114,111,119,100,121,32,102,111,114,32,109,121,32,112,101,97,99,101,41,58,32,34,84,72,69,32,81,85,73,67,75,32,66,82,79,87,78,32,70,79,88,32,74,85,77,80,83,32,79,86,69,82,32,84,72,69,32,76,65,90,89,32,68,79,71,44,34,32,103,105,118,105,110,103,32,109,101,32,97,32,108,111,111,107,46)
আমার কাছে এখন কেবল 22 টি ইউনিক রয়েছে তবে স্কোরটি উন্নত হয় না।
ঠিক আছে, আমি যদি স্পষ্টভাবে গ্রহণ করি এবং কেবল স্ট্রিংটি মুদ্রিত করি তবে:
# 131*60 = 7860
print'Elizabeth obnoxiously quoted (just too rowdy for my peace): "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG," giving me a look.'
7860 এর স্কোর। আমার এটি করা উচিত ছিল। তবে এত কিছু শিখতে পারতাম না।
আমি অনুমান করি যে আমি যদি অভাবগুলি 26 এর মাধ্যমে হ্রাস করতে পারি তবে যদি আমি গতিশীলভাবে উপরের কেসের অংশগুলি উত্পাদন করি, তাই:
# 145*36 = 5220
print'Elizabeth obnoxiously quoted (just too rowdy for my peace): '+'"the quick brown fox jumps over the lazy dog,"'.upper()+' giving me a look.'
আমি মনে করি পাইথন 5220 এর চেয়ে বেশি ভাল কিছু পাবে না Py
আপডেট: mbomb007 এর 500th স্কোর করার চেয়ে ভাল পাইথন সলিউশন রয়েছে।