এখানে ফ্রিকোয়েন্সি অনুসারে ইংরেজী বর্ণমালার বর্ণগুলি রয়েছে:
e t a o i n s h r d l c u m w f g y p b v k j x q z
এটি, e
সর্বাধিক ব্যবহৃত চিঠি এবং z
সবচেয়ে কম সাধারণ। ( উইকিপিডিয়া থেকে ডেটা ।)
আপনার চ্যালেঞ্জটি হ'ল কিছু রট-এন 'পাঠ্য গ্রহণ করা যেমন:
ocdndnvqzmtnzxmzohznnvbzocvodnqzmtnzxpmzviynvaz
এটি ROT-21 (42 এর অর্ধেক) এর মাধ্যমে "এনক্রিপ্ট করা" এটি "এইিসিভারসেক্রেটমেসেজেজটিটিসিসিওকুরিয়ান্সডেসাফে" পাঠ্য। আপনার প্রোগ্রাম, উপরের ফ্রিকোয়েন্সি টেবিলটি ব্যবহার করে প্রতিটি অক্ষর কতটা ঘোরানো হয়েছিল এবং মূল পাঠ্য তা নির্ধারণ করতে সক্ষম হওয়া উচিত।
(আপনি যদি রট-এন এর সাথে পরিচিত না হন তবে এটি প্রতিটি অক্ষরকে মূলত পরিবর্তিত করে দেয় n
example উদাহরণস্বরূপ, রট -২ এ a -> c, b -> d, ..., x -> z, y -> a, z -> b
।
কিভাবে, আপনি জিজ্ঞাসা? আপনার অবশ্যই ব্যবহার করা উচিত (খুব নিষ্পাপ) অ্যালগরিদম হ'ল:
- প্রত্যেকের জন্য
n
থেকে0
থেকে25
সমেত, ROT- আবেদন-n
ইনপুট স্ট্রিং। ( Gণাত্মকn
কারণ আমরা এনক্রিপশনটি বিপরীত করতে চাই R-n
ROT-26-n
যদি কোনও সহজ হয় তবে ROT- এর সমতুল্য )) - অক্ষরের আপেক্ষিক ফ্রিকোয়েন্সি যোগ করে প্রতিটি ইনপুট স্ট্রিংকে একটি সংখ্যায় রূপান্তর করুন।
e
হয়0
,t
হয়1
,a
হয়2
ইত্যাদি উদাহরণস্বরূপ, স্ট্রিং এর জন্য সংশ্লিষ্ট সংখ্যা"hello"
7 + 0 + 10 + 10 + 3 = 30 হয়। - সেই স্ট্রিংটি সন্ধান করুন যা সর্বনিম্ন সম্পর্কিত নম্বর রয়েছে।
- আউটপুট যে স্ট্রিং এবং এটি সম্পর্কিত
n
।
নিয়মাবলী:
- ইনপুট যে কোনও জায়গায় যুক্তিসঙ্গত হতে পারে (STDIN, ফাংশন আর্গুমেন্ট, একটি ফাইল থেকে ইত্যাদি), এবং তাই আউটপুট (STDOUT, ফাংশন রিটার্ন মান, একটি ফাইল, ইত্যাদি) করতে পারে
- যতক্ষণ না এটি সর্বদা অভিন্ন ফলাফল তৈরি করে ততক্ষণ আপনি একটি ভিন্ন অ্যালগরিদম ব্যবহার করতে পারেন। উদাহরণস্বরূপ,
z
0 হতে হবে এবংe
25 হবে এবং সর্বোচ্চ সংখ্যা নির্বাচন করাও ঠিক okay - যদি দুটি স্ট্রিংয়ের অভিন্ন স্কোর থাকে তবে আপনি সেগুলির মধ্যে একটি (বা উভয়) আউটপুট চয়ন করতে পারেন। এটি একটি প্রান্তের মামলা এবং এটির জন্য আপনাকে কোনও অ্যাকাউন্ট করতে হবে না।
- এটি কোড-গল্ফ , তাই বাইটের মধ্যে সংক্ষিপ্ততম কোডটি জিতবে!
পরীক্ষার কেস:
ইনপুট: ocdndnvqzmtnzxmzohznnvbzocvodnqzmtnzxpmzviynvaz
আউটপুট:21 thisisaverysecretmessagethatisverysecureandsafe
ইনপুট: pmttwxmwxtmwnxzwoziuuqvoxchhtmakwlmowtnabiksmfkpivom
আউটপুট:8 hellopeopleofprogrammingpuzzlescodegolfstackexchange
ইনপুট: ftueimeqzodkbfqpiuftdaffiqxhqeaufygefnqbqdrqofxkemrq
আউটপুট:12 thiswasencryptedwithrottwelvesoitmustbeperfectlysafe
ইনপুট: jgtgkuvjghkpcnvguvecugvjcvaqwowuvfgetarv
আউটপুট:2 hereisthefinaltestcasethatyoumustdecrypt
আপনি যদি ভাবছিলেন, আপনি যে জাভাস্ক্রিপ্ট পরীক্ষা কোডটি লিখেছিলেন তার একটি জেএসফিডাল এখানে রয়েছে, যা আমি এটির মধ্যে ফেলে দেওয়া সমস্ত পরীক্ষার ক্ষেত্রে সফলভাবে ডিক্রিপ্ট করেছিলাম।
wtaad
দিতে হবে0 wtaad
ফলে, এবংvszzc
দিতে হবে25 wtaad
ফলে।