পরিচিতি:
যদিও আমার মুলত আমার মাথায় একটি ডাচ গান ছিল, যেখানে এই গানের কথাগুলি রয়েছে: " দো 'এন স্টপজে নার ভোরেন, এন' স্টেপজি টেরুগ (" এটি "কিছুটা এগিয়ে যেতে এবং কিছুটা পিছনে পিছনে " অনুবাদ করা হয়েছে)) আমি পুরো গানের জন্য অনুসন্ধান করেছি, আমি বুঝতে পেরেছিলাম যে এগুলি কেবল পিছনে ছিল এবং কখনও কখনও পাশের দিকে যায় নি।
সুতরাং, পরিবর্তে আমি এখন এই চ্যালেঞ্জের জন্য মিস্টার সি দ্য স্লাইড ম্যান ওরফে ডিজে ক্যাস্পার - চ-চা স্লাইডের গান ব্যবহার করি ।
যদি আমরা অন্য সমস্ত কিছু উপেক্ষা করি এবং উল্লিখিত পরিমাণগুলি সহ কেবলমাত্র "বাম", "ডান", "পিছনে" এবং "হপ" (আমি "হপ" গণ্য করেছি) শব্দগুলি দেখি, সম্পূর্ণ গানের নীচে তালিকা থাকবে ( আমি এখানে সংক্ষিপ্তসারগুলি LRBH ব্যবহার করছি):
LBHRLLBHRLBHHRRLLLRLBHHHHRRLLLBHHHHHRLRLRLHRLLBHHLRLBHH
এখানে কোনও আড়ালযোগ্য জাভাস্ক্রিপ্ট কোড-স্নিপেটে (স্থান বাঁচাতে) পুরো গানের লিরিক্স, যেখানে চলনগুলি এবং পরিমাণগুলি অবরুদ্ধ বন্ধনীর সাথে ঘিরে রয়েছে:
চ্যালেঞ্জ:
এখন নিজেই চ্যালেঞ্জ onto আমরা এক, দুই, বা তিন ইনপুট নিতে † । এর মধ্যে একটি হল সূচক-পূর্ণসংখ্যার একটি তালিকা (সুতরাং 0-সূচকযুক্তের জন্য অ-নেতিবাচক বা 1-সূচকযুক্তের জন্য ইতিবাচক)। (অন্যান্য ইনপুটগুলি alচ্ছিক এবং চ্যালেঞ্জের নিয়মে ব্যাখ্যা করা হয়েছে))
প্রতিটি পরীক্ষার কেস একটি পজিশনে শুরু হবে {x=0, y=0}
।
এবার চলগুলির গানের তালিকাটি ব্যবহার করুন এবং ইনপুট-তালিকার প্রদত্ত সূচকে সমস্ত চাল মুছে ফেলুন । তারপরে মুভগুলির উপর 'হাঁটাচলা' করুন (ইনপুট-অ্যারের বৃহত্তম সূচক পর্যন্ত) এবং আপনি যে অবস্থানটি শেষ করবেন তার আউটপুট।
নিম্নরূপ প্যাচসমূহ স্থানাঙ্ক পরিবর্তন করতে হবে:
- R
: x+1
- L
: x-1
- H
: y+1
- B
:y-1
চ্যালেঞ্জ নিয়ম:
- মুভিগুলি-তালিকাটি আপনার পছন্দ মতো কোনওভাবে অ্যাক্সেস করা যায়। †: একটি অতিরিক্ত ইনপুট করা যেতে পারে; আপনি যে ডিস্ক থেকে পড়বেন তা ডিস্কের একটি পৃথক ফাইলে থাকতে পারে; আপনার অ্যাক্সেস করা কোনও শ্রেণি-স্তরের পরিবর্তনশীল হতে পারে be এটা তোলে আকারে থাকতে হবে
L
,R
,B
এবংH
, যদিও (ক স্ট্রিং বা চরিত্র-তালিকা / অ্যারে হতে পারে) যাতে আপনি যেমন প্যাচসমূহ-তালিকা সংরক্ষণ করা যাচ্ছে না1
s এবং-1
s অথবা পূর্ণসংখ্যার। - উপরে বর্ণিত মুভ-তালিকা হার্ড-কোডড এবং সর্বদা একই থাকবে। (এটি আপনার কেনার উত্তরের বাইট-গণনাতে সহায়তা করে যদি এটি কোনও ইনপুট হিসাবে গ্রহণ না করে শ্রেণিকেন্দ্রের ক্ষেত্র হিসাবে রাখাই ভাল is
- ইনপুট-তালিকা উভয়ই 0-সূচকযুক্ত বা 1-ইনডেক্সড (আপনার অবধি) হতে পারে
- তালিকার বৃহত্তম সূচকটি বাদ দিয়ে আমরা কেবল 'পদচারণা' করি।
- ।: আপনাকেও এই শেষ আইটেমটি ইনপুট-অ্যারের শেষ আইটেমের পরিবর্তে পৃথক পূর্ণসংখ্যার ইনপুট হিসাবে গ্রহণ করার অনুমতি দেওয়া হয়েছে।
- আমরা শেষ হওয়া x এবং y স্থানাঙ্কগুলির আউটপুট যে কোনও যুক্তিসঙ্গত বিন্যাসে হতে পারে (দুটি পৃথক রেখায় STDOUT এ মুদ্রিত দুটি আইটেম সংলগ্ন স্ট্রিং, ইত্যাদি)
- আপনি ধরে নিতে পারেন ইনপুট-তালিকাটি সর্বনিম্ন থেকে সর্বোচ্চ (বা আপনি যদি পছন্দ করেন তবে সর্বাধিক থেকে নিম্নতম) বাছাই করা হয়, এক্ষেত্রে প্রথম আইটেমটি মুভ-তালিকার প্রাথমিক আকার - যদি পৃথক ইনপুট হিসাবে না নেওয়া হয়)। এবং এটিতে কোনও সদৃশ সূচক থাকবে না।
- যদি ইনপুট-তালিকার বৃহত্তম সূচকে উপরের চালগুলির তালিকার চেয়ে বড় হয় (55 টি চলন উপরের চাল-তালিকায় রয়েছে), আমরা আবার তালিকার শুরুতে প্রায় গুটিয়ে ফেলি (বৃহত্তম সূচকগুলির উপর নির্ভর করে যতবার প্রয়োজন ততবার ইনপুট)।
- এর
y,x
পরিবর্তে আপনাকে আউটপুট দেওয়ার অনুমতি দেওয়া হয়েছেx,y
তবে আপনি যদি তা করেন তবে দয়া করে আপনার উত্তরে এটি উল্লেখ করুন।
উদাহরণ:
ইনপুট: [0,4,8,10,13,14,27,34,42,43,44,50,53,56,59,60,64]
এখানে চালগুলি এবং (0-সূচিযুক্ত) সূচকগুলি একে অপরের উপরে:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64
L, B, H, R, L, L, B, H, R, L, B, H, H, R, R, L, L, L, R, L, B, H, H, H, H, R, R, L, L, L, B, H, H, H, H, H, R, L, R, L, R, L, H, R, L, L, B, H, H, L, R, L, B, H, H, L, B, H, R, L, L, B, H, R, L
ইনপুট-তালিকার সূচকগুলি অপসারণ করে আমাদের নীচের চলন-তালিকাগুলি অবশিষ্ট থাকবে:
1, 2, 3, 5, 6, 7, 9,11,12,15,16,17,18,19,20,21,22,23,24,25,26,28,29,30,31,32,33,35,36,37,38,39,40,41,45,46,47,48,49,51,52,54,55,57,58,61,62,63
B, H, R, L, B, H, L, H, H, L, L, L, R, L, B, H, H, H, H, R, R, L, L, B, H, H, H, H, R, L, R, L, R, L, L, B, H, H, L, L, B, H, L, H, R, B, H, R
এখন যদি আমরা অবস্থান থেকে অন্য {0, 0}
পদক্ষেপের উপর দিয়ে চলি তবে প্রতিটি পদক্ষেপের পরে আমাদের নিম্নলিখিত নতুন স্থানাঙ্ক থাকবে:
{0,0};B,{0,-1};H,{0,0};R,{1,0};L,{0,0};B,{0,-1};H,{0,0};L,{-1,0};H,{-1,1};H,{-1,2};L,{-2,2};L,{-3,2};L,{-4,2};R,{-3,2};L,{-4,2};B,{-4,1};H,{-4,2};H,{-4,3};H,{-4,3};H,{-4,5};R,{-3,5};R,{-2,5};L,{-3,5};L,{-4,5};B,{-4,4};H,{-4,5};H,{-4,6};H,{-4,7};H,{-4,8};R,{-3,8};L,{-4,8};R,{-3,8};L,{-4,8};R,{-3,8};L,{-4,8};L,{-5,8};B,{-5,7};H,{-5,8};H,{-5,9};L,{-6,9};L,{-7,9};B,{-7,8};H,{-7,9};L,{-8,9};H,{-8,10};R,{-7,10};B,{-7,9};H,{-7,10};R,{-6,10}
সুতরাং চূড়ান্ত আউটপুট হবে: {-6, 10}
সাধারাইওন রুল:
- এটি কোড-গল্ফ , তাই বাইট জেতে সংক্ষিপ্ত উত্তর।
কোড-গল্ফ ভাষাগুলি আপনাকে নন-কোডগলফিং ভাষার সাথে উত্তর পোস্ট করতে নিরুৎসাহিত করবেন না। 'যে কোনও' প্রোগ্রামিং ভাষার জন্য যতটা সম্ভব সংক্ষিপ্ত উত্তর নিয়ে আসার চেষ্টা করুন। - স্ট্যান্ডার্ড নিয়মগুলি আপনার উত্তরের জন্য প্রযোজ্য , সুতরাং আপনাকে সঠিক পরামিতি এবং রিটার্ন-টাইপ, সম্পূর্ণ প্রোগ্রাম সহ STDIN / STDOUT, ফাংশন / পদ্ধতি ব্যবহারের অনুমতি দেওয়া হবে। আপনার কল
- ডিফল্ট লুফোলগুলি নিষিদ্ধ।
- যদি সম্ভব হয় তবে আপনার কোডের জন্য একটি পরীক্ষার সাথে একটি লিঙ্ক যুক্ত করুন।
- এছাড়াও, আপনার উত্তরের জন্য একটি ব্যাখ্যা যুক্ত করা অত্যন্ত প্রস্তাবিত।
পরীক্ষার কেস:
0-indexed input: [0,4,8,10,13,14,27,34,42,43,44,50,53,56,59,60,64]
1-indexed input: [1,5,9,11,14,15,28,35,43,44,45,51,54,57,60,61,65]
Output: {-6, 10}
0-indexed input: [55] (Note: There are 55 moves in the unmodified list)
1-indexed input: [56] (Note: There are 55 moves in the unmodified list)
Output: {-6, 11}
0-indexed input: [0,1,4,5,6,9,10,15,16,17,19,20,27,29,30,37,38,39,41,44,45,46,49,51,52]
1-indexed input: [1,2,5,6,7,10,11,16,17,18,20,21,28,30,31,38,39,40,42,45,46,47,50,52,53]
Output: {10, 16}
0-indexed input: [2,3,7,8,11,12,13,14,18,21,22,23,24,25,26,31,32,33,34,35,36,38,40,42,43,47,48,50,53]
1-indexed input: [3,4,8,9,12,13,14,15,19,22,23,24,25,26,27,32,33,34,35,36,37,39,41,43,44,48,49,51,54]
Output: {-18, -7}
0-indexed input: [0]
1-indexed input: [1]
Output: {0, 0}
0-indexed input: [4,6,7,11,12,13,15,17,20,28,31,36,40,51,59,66,73,74,80,89,92,112,113,114,116,120,122,125,129,134,136,140,145,156,161,162,165,169,171,175,176,178,187,191,200]
1-indexed input: [5,7,8,12,13,14,16,18,21,29,32,37,41,52,60,67,74,75,81,90,93,113,114,115,117,121,123,126,130,135,137,141,146,157,162,163,166,170,172,176,177,179,188,192,201]
Output: {-17, 37}
0-indexed input: [25,50,75,100,125,150,175,200,225,250]
1-indexed input: [26,51,76,101,126,151,176,201,226,251]
Output: {-28, 49}