ভূমিকা
আমরা - বিশেষত আমাদের মধ্যে গিকগুলি, যারা ভক্ত হতে থাকে - সকলেই এই পুরানো ফার সাইড কার্টুনটিকে মনে রাখে :
স্পষ্টতই, অধ্যাপক শোয়ার্টজম্যান তার উদ্ভাবনটি ব্যবহার করার আগে তার প্রোগ্রামিং দক্ষতাটি আরও কিছুটা আগেই সামলে নিতে পারতেন। তবে আপনি নিজেই এটি প্রতিলিপি করতে পারেন ... যতটা সম্ভব কম বাইট ব্যবহার করে?
ইনপুট স্পেস
আপনাকে অবশ্যই এমন একটি স্ক্রিপ্ট তৈরি করতে হবে যা কুকুরের শব্দগুলিকে যথাযথভাবে "হেই" এসগুলিতে অনুবাদ করবে। এটি খাঁটি কোড গল্ফ; সর্বনিম্ন বাইট জেতা
আপনার ইনপুটটিতে নিম্নোক্ত টোকেনগুলির কয়েকটি সমন্বয় থাকবে:
Bark
,Baark
,Baaark
,Baaaark
, ... (যে,B*rk
অন্তত 1a
তারকাচিহ্ন প্রতিস্থাপন)Woof
,Wooof
,Woooof
, ... (W*f
অন্তত সঙ্গে 2o
গুলি তারকাচিহ্ন প্রতিস্থাপন)Grr
,Grrr
,Grrrr
, ..., (G
দ্বারা অন্তত অনুসৃত 2r
গুলি)- যেকোনো সংখ্যক
.
(আমল),!
(বিস্ময়বোধক চিহ্ন) এবং / অথবা?
(প্রশ্নবোধক চিহ্ন) অক্ষর, যা ইনপুট যে কোন জায়গায় ঘটতে পারে
আবার দ্রষ্টব্য, Woof
বেসড এবং- Grr
ভিত্তিক টোকেনগুলিতে সর্বদা যথাক্রমে কমপক্ষে দুটি o
এবং r
এস প্রয়োজন; Wof
এবং Gr
হয় না বৈধ টোকেন।
একটি টোকেন কত দিন হতে পারে তার কোনও সীমা নেই (উদাহরণস্বরূপ, টোকনে a
কতবার পুনরাবৃত্তি হতে পারে Bark
); তবে, এই চ্যালেঞ্জটি পাস করার জন্য আপনার ডিকোডারকে কেবলমাত্র 10 টি a
এস, o
গুলি বা r
এস দিয়ে ইনপুট টোকেনের জন্য সঠিকভাবে কাজ করতে হবে।
আউটপুট স্পেস
শোয়ার্জম্যানের ডিজাইনের প্রতি বিশ্বস্ত, আপনার কাইনাইন ডিকোডার প্রোগ্রামটি অবশ্যই এটি নীচে আউটপুট পাঠ্যে প্রসেস করতে হবে:
Bark
,Woof
এবংGrr
হয়েHey
;Baark
,Wooof
এবংGrrr
হয়েHeyy
;Baaark
,Woooof
এবংGrrrr
হয়েHeyyy
; প্রভৃতি- সমস্ত-
Bark
ভিত্তিক টোকেনগুলির জন্য,y
আউটপুট-Hey
ভিত্তিক টোকনেa
s এর সংখ্যা অবশ্যই s এর সংখ্যার সমান হতে হবে ; - অল-
Woof
বেসড টোকেনগুলির জন্য,y
আউটপুট-Hey
ভিত্তিক টোকনে s এর সংখ্যা অবশ্যই s এর সংখ্যার চেয়ে কম হতে হবেo
; - অল-
Grr
বেসড টোকেনগুলির জন্য,y
আউটপুট-Hey
ভিত্তিক টোকনে s এর সংখ্যা অবশ্যই s এর সংখ্যার চেয়ে কম হতে হবেr
; - সমস্ত বিরামচিহ্ন (
.
,!
এবং?
) অপরিবর্তিত রয়েছে।
কেবলমাত্র s এবং s এর y
জন্য আউটপুট থেকে একটি বাদ দিতে ভুলবেন না ! 8 এস এর ইনপুটটি 8 টির সাথে মিলে যাবে । যাইহোক, শুধুমাত্র 7 এস সহ হয়ে যায় ।Woof
Grr
Baaaaaaaark?
a
Heyyyyyyyy?
y
Woooooooof?
Heyyyyyyy?
y
আবার, যদি আপনি আপনার প্রোগ্রামটি সীমাহীন আকারের ইনপুট টোকেনের জন্য কাজ করতে পারেন তবে এটি দুর্দান্ত, তবে এই চ্যালেঞ্জের উদ্দেশ্যে, আপনার প্রোগ্রামটি কেবলমাত্র এটি নিশ্চিত করা যায় যে এটি ইনপুট টোকেনগুলির জন্য যাতে 10 টির বেশি বারবার অক্ষর নেই সঠিকভাবে কাজ করে? ।
আপনার ইনপুটটিতে সমস্ত Bark
-, Woof
-, এবং- Grr
ভিত্তিক টোকেনগুলি বড় হাতের অক্ষর দিয়ে শুরু বলে ধরে নেওয়া হয়। অতএব, রূপান্তর বা অনুরূপ কিছু পরিচালনা করার দরকার নেই ।Bark grrr
Hey heyy
উদাহরণ ইনপুট এবং আউটপুট
- ইনপুট:
Bark. Bark! Bark!!
- আউটপুট:
Hey. Hey! Hey!!
- ইনপুট:
- ইনপুট:
Baaaaaark?
(ছয়টিa
) - আউটপুট:
Heyyyyyy?
(ছয়টিy
)
- ইনপুট:
- ইনপুট:
Grrrrrrrr...
(আটr
টি) - আউটপুট:
Heyyyyyyy...
( সাতটিy
)
- ইনপুট:
- ইনপুট:
?...!
- আউটপুট:
?...!
- ইনপুট:
- ইনপুট:
Wooof Woof? Grrrr. Baaaark Grr!
- আউটপুট:
Heyy Hey? Heyyy. Heyyyy Hey!
- ইনপুট: