আপনি যদি কখনও প্যালিনড্রমিক কোডটি লেখার চেষ্টা করেন তবে আপনি জানতে পারবেন আপনার পথে বন্ধনী কতটা ঝোঁকে। ()()
না যে শব্দ কবিতা প্রভৃতি উলটা করিয়া পড়িলেও একই থাকে , যদিও এটা ধরণ দেখে মনে হচ্ছে এটি হওয়া উচিত, যখন হয় ())(
এবং ()(
উভয় palindromic এবং উভয় খুব মূক খুঁজছেন হয়। এটি যদি অন্যদিকে থাকে তবে সুবিধাজনক হবে না?
একটি স্ট্রিং সুবিধামতভাবে প্যালিনড্রোমিক হয় যদি তার বিপরীতে এর সমস্ত বন্ধনী ( ()
), বন্ধনী ( []
) এবং ব্রেসগুলি ( {}
) উল্টানো থাকে তখন উত্পন্ন স্ট্রিংয়ের সমান হয় । অন্য কোনও অক্ষর বিশেষ নয় এবং তাদের উল্টানো দরকার। ( <>
কখনও কখনও জোড় তৈরি হয় তবে প্রায়শই তাই না হয় এগুলি বাদ পড়ে))
আপনার কাজটি হ'ল আপনার ভাষায়, একটি প্রোগ্রাম (এসটিডিআইএন-এ ইনপুট নেওয়া) বা একটি ফাংশন (একক স্ট্রিং আর্গুমেন্ট গ্রহণ করা) যা (ক) একটি উপযুক্ত ধারাবাহিক মান দেয় * যখন তার যুক্তিটি সুবিধাজনকভাবে প্যালিনড্রমিক হয় এবং আলাদা, সামঞ্জস্যপূর্ণ মিথ্যা হয় অন্যথায় মান, এবং (খ) নিজেই স্বাচ্ছন্দ্যে প্যালিনড্রমিক।
উদাহরণস্বরূপ, নিম্নলিখিত ইনপুটগুলি সুবিধামতভাবে প্যালিনড্রোমিক হয়:
racecar
(a)(bb)(a)
void main(int argc, *char[] argv) {} (vgra []rahc* ,cgra tni)niam diov
এবং নিম্নলিখিতটি নয়:
non-palindrome
A nut for a jar of tuna?
(old [style] parens) )snerap ]elyts[ dlo(
ingirumimusnocte)etconsumimurigni
আপনি দোভাষী / সংকলক পতাকাগুলি বাদ দিয়ে কোনও বাহ্যিক অবস্থানে (নির্দিষ্ট ফাইলের নাম, ডিরেক্টরি কাঠামো, অন্যান্য ব্যবহারকারীর ইনপুট, ওয়েব অ্যাক্সেস ইত্যাদি) উপর নির্ভর করতে পারবেন না।
এছাড়াও, আপনি "মন্তব্য কৌশল" ব্যবহার করতে পারবেন না যেখানে আপনি আপনার ভাষায় মন্তব্য করার সুবিধাগুলির সুযোগ নিয়ে মন্তব্য করেছেন বা অব্যবহৃত কিছু কোড ব্যবহার করছেন। উদাহরণস্বরূপ, নিম্নলিখিতগুলির সমস্তটির অনুমতি নেই, কারণ এগুলিতে অ-কার্যকরী অংশ রয়েছে যা নিরাপদে মুছে ফেলা বা ধ্বংস করা যায় (সুবিধাজনকভাবে প্যালিনড্রমিক-নেস হারানোর ব্যয়ে):
{some code} // {edoc emos}
{some code} NB.BN {edoc emos}
"n\" ;{edoc emos} ;"; {some code}; "\n"
স্পষ্টতই এটি প্রতিটি ক্ষেত্রে আবশ্যক না, তবে এখানে চ্যালেঞ্জের মনোভাবটি সংশোধন প্যারেনস এবং বন্ধনী ব্যবহারের পরিবর্তে মন্তব্যগুলি এবং অপসারিত ** কোড ব্যবহার না করা উচিত instead আমি আপনার দিকে তাকাচ্ছি, এলআইএসপি, ব্রেনফাক।
এটি একটি কোড-গল্ফ , তাই সংক্ষিপ্ততম কোডটি জয়ী হয় তবে সমস্ত দৈর্ঘ্যের কোডটি স্বাগত।
* ধারাবাহিক সত্য এবং মিথ্যা মূল্যবোধের দ্বারা, আমি বলতে চাইছি যে আপনি এই মানগুলি একে অপরের থেকে পৃথক হওয়া পর্যন্ত 1
সত্য এবং 0
মিথ্যা, বা False
সত্য এবং মিথ্যা হিসাবে একটি মানকে জোড়া "no"
দিতে পারেন not আপনার প্রোগ্রামের রান থেকে রান থেকে পরিবর্তন করুন। আপনার অক্ষর সংরক্ষণ করে যা কিছু ব্যবহার করুন।
** দ্ব্যর্থহীনতার সাথে বিভ্রান্ত হওয়ার দরকার নেই : কোডটি যা বৈধ এবং অদ্ভুত কাজ করতে পারে তবে কখনই ডাকা হয় না।
(eslaf)fi
করতে পারেন if(false)
।
()()
প্যালিনড্রোম কেন নয় তা নির্ধারণ করতে আমার অনেক দীর্ঘ সময় লেগেছে
if(false){some code}
বা অব্যবহৃত ভেরিয়েবল সম্পর্কে কী ? তাদের কি অনুমতি দেওয়া হচ্ছে?