আপনাকে দুটি টুকরো ইনপুট দেওয়া হবে: চলমান ট্র্যাককে সংজ্ঞায়িত করে রান-লেংথ এনকোডযুক্ত বিন্যাসের একটি স্ট্রিং এবং যেটি শুরু করার জন্য লেনটি উপস্থাপন করছে একটি মূলধন পত্র। উদাহরণস্বরূপ, "3a4A6b5B" স্ট্রিংটি "aaaAAAbbbbbBBBBB" তে প্রসারিত হয়েছে। তারপরে আপনি ট্র্যাক তৈরি করতে প্রসারিত স্ট্রিং ব্যবহার করুন, যেমন:
A) aaaAAAA
B) bbbbbbBBBBB
এটি দুটি লেন সহ একটি ট্র্যাক। ছোট হাতের অক্ষর বায়ুর প্রতিনিধিত্ব করে। আপনি বিমান চালাতে পারবেন না! বড় হাতের অক্ষরগুলি আপনি চালাতে পারেন এমন রাস্তার প্রতিনিধিত্ব করে। এই চ্যালেঞ্জের জন্য আপনার লক্ষ্যটি হ'ল বড় বড় চিঠি দেওয়া, সেই লেনে শুরু হওয়া কোনও রেসার কতদূর চালাতে পারে output তাদের উপরে বা নীচে সরাসরি কোনও টুকরো রাস্তা থাকলে রেসগুলি লেনে স্যুইচ করার অনুমতি দেয়। তাদের পিছনে দৌড়ানোর অনুমতিও রয়েছে! এই নির্দিষ্ট ট্র্যাকের উপর কোনও অক্ষরের ইনপুট জন্য আউটপুট 0 হয় , কারণ ট্র্যাকগুলির কোনওটিরই অবস্থান 1 এ চলমান রাস্তা নেই।
উদাহরণ:
ইনপুট: "4A5B4c3C", "এ"
এই কোডটি এমন ট্র্যাকটিতে প্রসারিত যা দেখে মনে হচ্ছে:
A) AAAA
B) BBBBB
C) ccccCCC
এই উদাহরণের জন্য আউটপুট 7 হয় , কারণ লেন এ থেকে শুরু হওয়া কোনও রানার নীচে লেন বিতে চলে যেতে পারে এবং তারপরে লেন সিতে গিয়ে 7 তম অবস্থানে পৌঁছতে পারে।
ইনপুট: "4A2B3D", "ডি"
ট্র্যাক:
A) AAAA
B) BB
C)
D) DDD
আউটপুটটি 3 , কারণ লেন ডি থেকে শুরু হওয়া কোনও রানার লেন বি বা এ যাওয়ার কোনও উপায় নেই
ইনপুট: "4A4a4A3b6B5C", "এ"
ট্র্যাক:
A) AAAAaaaaAAAA
B) bbbBBBBBB
C) CCCCC
আউটপুটটি 12 , কারণ A তে রানার বি তে স্যুইচ করতে পারে এবং তারপরে শেষে A তে ফিরে আসতে পারে। "সি" এর জন্য সর্বোচ্চ দূরত্বও 12 "" বি "এর জন্য এটি 0 হয় is
ইনপুট: "12M4n10N11O", "এম"
ট্র্যাক:
M) MMMMMMMMMMMM
N) nnnnNNNNNNNNNN
O) OOOOOOOOOOO
মাল্টি-ডিজিট রান-লেন্থ সহ সাধারণ উদাহরণ। আউটপুট 14 ।
ইনপুট: "4A5B1b2B4c3C", "এ"
ট্র্যাক:
A) AAAA
B) BBBBBbBB
C) ccccCCC
আউটপুটটি 8 , কারণ এ-তে রানার নীচে বি-তে, তারপরে সি-তে চলে যেতে পারে, তারপরে বি-তে ফিরে আসবে (এই উদাহরণের জন্য FryAmTheEggmanকে ধন্যবাদ))
ইনপুট: "1a2A2a2B1c1C1d3D", "বি"
ট্র্যাক:
A)aAAaa
B)BB
C)cC
D)dDDD
আউটপুট 4 হয় । রানারকে দুটি পাথ দুটি পরীক্ষা করতে হবে যা আরও এগিয়ে যায়। (এই উদাহরণের জন্য ব্যবহারকারী 81655 ধন্যবাদ।)
ইনপুট: "2A1b1B2C1D3E", "এ"
ট্র্যাক:
A) AA
B) bB
C) CC
D) D
E) EEE
আউটপুট 3 । দূরতম গন্তব্যে পৌঁছতে আপনাকে পিছন দিকে দৌড়াতে হবে। (আবারও, উদাহরণস্বরূপ ব্যবহারকারী 81655 কে ধন্যবাদ।)
মন্তব্য:
- যদি কোনও ট্র্যাকের কোনও নির্দিষ্ট অবস্থানে একটি চিঠি না থাকে, তবে এটি বায়ু হিসাবেও গণ্য। যেমন, যদি ইনপুটটি "Q" হয় এবং কোনও রাস্তাটি "Q" তে রাখা হয় না তবে আউটপুট হওয়া উচিত 0 ।
- ইনপুট দুটি টুকরা আছে। প্রথমটি একটি রান-দৈর্ঘ্যের এনকোডেড স্ট্রিং। দ্বিতীয়টি হ'ল বড় হাতের অক্ষর (আপনি এর জন্য স্ট্রিং বা চর ডেটাটাইপ ব্যবহার করতে পারেন read) পাঠযোগ্যতার জন্য এই ইনপুটগুলির মধ্যে কিছুটা যুক্তিসঙ্গত বিভাজক হওয়া উচিত (স্থান, নতুন লাইন, ট্যাব, কমা, আধা-কোলন)।
- রান-দৈর্ঘ্যের এনকোডযুক্ত স্ট্রিং সবসময় বর্ণমালার ক্রমে উপাদানগুলি তালিকাভুক্ত করবে
- একটি লেনের দীর্ঘতম দৈর্ঘ্য 1000 হতে পারে Therefore সুতরাং, সবচেয়ে বড় সম্ভাব্য আউটপুট 1000।
ট্র্যাক জেনারেটর:
আমাদের প্রথম উত্তরের সম্মানে, এখানে একটি ট্র্যাক জেনারেটর রয়েছে। বর্তমানের উত্তরগুলি স্টম্প করার জন্য কিছু নিয়ে আসার চেষ্টা করুন! (দ্রষ্টব্য: জেনারেটরের কোনও ত্রুটি বার্তা না দেখানোর কারণে আপনার ট্র্যাক কোডটি অবশ্যই কার্যকর হবে না proper সঠিক ফর্মের জন্য উপরের উদাহরণগুলি দেখুন))
function reset() {
var t = document.getElementById("track");
t.innerHTML = "";
for(var i = 0;i<26;i++) {
var c = String.fromCharCode(i+65);
t.innerHTML += "<div><span>"+c+") </span><span id='"+c+"'></span></div>";
}
}
function rand() {
var track = "";
for(var i = 0;i<26;i++) {
var blocks = Math.floor(Math.random()*4);
var start = Math.floor(Math.random()*2);
for(var j = 0;j<blocks;j++) {
var letter = String.fromCharCode(65+i+32*((start+j)%2));
var length = Math.floor(Math.random()*4)+1;
track += length+letter;
}
}
document.getElementById("code").value = track;
}
function gen() {
var s = document.getElementById("code").value;
var check = s.match(/(\d+[A-Za-z])+/);
if(check == null || check[0]!=s) {
alert("Invalid Track");
return false;
}
reset();
var n = s.match(/\d+/g);
var o = s.match(/[A-Za-z]/g);
for(var i = 0;i<n.length;i++) {
var c = o[i].toUpperCase();
document.getElementById(c).textContent += o[i].repeat(n[i]);
}
return true;
}
<body onload="reset()">
Track: <input type="text" id="code" size="75%" /><input type="submit" onclick="gen()" /><input type="button" value="Random Track" onclick="rand()" /><code id="track"/>
</body>
4A2B3D
কি সরিয়ে দেওয়া যেতে পারে? উদাহরণস্বরূপ, যোগ 0c
? যদি তা না হয়, যখন বলা 1A1Z
হয়, তখন কি প্রত্যাশা করা হয়, বাই লেনগুলি বিদ্যমান বলে ধরে নেওয়া হয়েছে (তবে খালি রয়েছে)?
12M4n10N11O
উদাহরণস্বরূপ, আউটপুট 14, তারপর মিথ্যা: M0 এ দীর্ঘতম পথ শুরু হয় এবং C0 এ সমাপ্ত, 25. একটি দৈর্ঘ্যের জন্য