ভূমিকা
বোর্ডগেমগুলি বাচ্চাদের মধ্যে একটি ক্লাসিক খেলা, তবে কিছু বাচ্চা রয়েছে যা ধাপে ধাপে বোর্ডগেম খেলতে বিরক্ত বোধ করে। এখন তারা বোর্ডে হাত দেওয়ার আগে ফলাফলটি দেখানো চায়।
চ্যালেঞ্জ
ধরুন এই বোর্ডগেম: >---#<---X---<X<--#-$
> means the start of the game
- means a position without danger
< means the player should return one step back
X means the player won't move next round
# means a portal where the player returns to the start position
$ the first player to get there or after there wins the game
ইনপুট উপরে বর্ণিত boardgame এর দিক এবং (থেকে কিছু মান সঙ্গে দুইটি অ্যারের সঙ্গে একটি স্ট্রিং নিয়ে গঠিত 1
করার 6
অনুক্রমে) যে উভয় খেলোয়াড় (ছাগলছানা A
এবং ছাগলছানা B
যখন এক ঘনক্ষেত্র বাজানো) পেয়েছিলাম ছিল।
উভয় অ্যারে সর্বদা একই দৈর্ঘ্য> = 1 থাকবে।
বাচ্চা A
সবসময় গেমটি শুরু করে।
আপনার অবশ্যই প্রথমে বাচ্চাটিকে আউটপুট দিতে হবে যা শেষ বা তার কাছাকাছি এসেছিল।
যদি 0
কোনওরই শেষ না হয় এবং উভয় বাচ্চা একই অবস্থানের মুদ্রণ বা অন্য কোনও মিথ্যা মানে থাকে।
যদি একটি অ্যারে রান আউট হয়ে যায় এবং অন্যটিতে ডাইস রোলগুলি বাকী থাকে (এক খেলোয়াড়ের Xs- এ কয়েকটি টার্ন হারিয়ে যায়), তবে বাকি ডাইস রোলগুলি ব্যবহার করা উচিত।
এই কাজের জন্য, আপনি এমন একটি প্রোগ্রাম / ফাংশন তৈরি করতে পারেন, যা স্টিডিনের ইনপুট পড়তে পারে, বা পরামিতি / আর্গুমেন্ট এবং আউটপুট / রিটার্ন / বিজয়ী ছাগলছানা মুদ্রণ করতে পারে।
যেহেতু এটি কোড-গল্ফ , তাই বাইট জয়ের সংক্ষিপ্ত উত্তর!
উদাহরণ ইনপুট এবং আউটপুট
আপনি ইনপুট এর পৃথক ফর্ম্যাট ব্যবহার করতে পারেন, তবে আপনার কেবল বোর্ডগেম, ছাগল-এ এবং ছাগলছানা-বি মানগুলি নেওয়া উচিত।
উদাহরণ 1:
board: >---#<---X---<X<--#-$
kid-A: [3,6,6,5,2,1]
kid-B: [4,5,3,5,5,5]
output: A
ব্যাখ্যা করে:
>---#<---X---<X<--#-$ # both kids in position
B--A#<---X---<X<--#-$ # kid-A moved 3 to -
B--A#<---X---<X<--#-$ # kid-B moved 4 to # and returned home
B---#<---A---<X<--#-$ # kid-A moved 6 to X and will wait one round
B---#<---A---<X<--#-$ # kid-B moved 5 to < returned one to # and returned home
>--B#<---A---<X<--#-$ # kid-B moved 3 to -
>--B#<---X---<A<--#-$ # kid-A moved 6 to < returned one to X and will wait again
>---#<--BX---<A<--#-$ # kid-B moved 5 to -
>---#<---X--B<A<--#-$ # kid-B moved 5 to < returned one to -
>---#<---X--B<X<--#A$ # kid-A moved 5 to -
>---#<---X---<X<-B#A$ # kid-B moved 5 to -
>---#<---X---<X<-B#-$A # kid-A moved 2 and won the game!
উদাহরণ 2:
board: >-<<<<<$
kid-A: [1,2,3]
kid-B: [5,5,4]
output: 0
উদাহরণ 3:
board: >-<-<#<-<-<-$
kid-A: [5,4,2]
kid-B: [1,1,1]
output: B
ব্যাখ্যা করে:
>-<-<#<-<-<-$ # both kids in position
>-<-<#<-<-<-$ # kid-A moved 5 to # returned home
AB<-<#<-<-<-$ # kid-B moved 1 to -
>B<A<#<-<-<-$ # kid-A moved 4 to < returned one to -
>B<A<#<-<-<-$ # kid-B moved 1 to < returned one to -
AB<-<#<-<-<-$ # kid-A moved 2 to # returned home
AB<-<#<-<-<-$ # kid-B moved 1 to < returned one to -
Current position: (A:0, B:1) output: B