চকোলেট বার খান


11

আমার একটি চকোলেট বার রয়েছে এবং আমার এটি খেতে সহায়তা প্রয়োজন যাতে আপনি এটি করার জন্য কোনও প্রোগ্রাম লিখবেন।

ব্যাখ্যা

প্রথম লাইনটি ইনপুট। উদাহরণগুলি খালি রেখার দ্বারা পৃথক করা হয়।

7
   ____
 __|__|
|__|__|
|__|__|
|__|__|

6
_______
|__|__|
|__|__|
|__|__|

5
   ____
 __|__|
|__|__|
|__|__|

0


1
   ____
   |__|

ফটকা খেলা

আশা করি উদাহরণগুলি পরিষ্কারভাবে এই চ্যালেঞ্জটিকে নির্দিষ্ট করে তবে কোনও সম্ভাব্য বিভ্রান্তি এড়াতে, এখানে একটি অনুমান:

আপনার কাছে একটি একক alচ্ছিক ট্রিলিং / শীর্ষস্থানীয় সাদা স্থান থাকতে পারে

এর একটি ইনপুট 0হ'ল খালি আউটপুট।

যদি ইনপুটটি সমান হয় তবে উপরের সারিগুলি দেখতে এমন দেখাচ্ছে:

_______
|__|__|

যদি এটি বিজোড় হয় তবে উপরের সারিটি হ'ল:

   ____
   |__|

এটি যদি বিজোড় এবং 1 টিরও বেশি হয় তবে শীর্ষ সারিগুলি হ'ল:

  ____
__|__|

নিম্নলিখিত সারিগুলি হল:

|__|__|

যতক্ষণ না উদাহরণগুলির সংখ্যা |__|ইনপুট হিসাবে সমান হয়


ইনপুট জন্য আউটপুট কি 1? ইনপুট কি 0সমর্থন করা দরকার?
ডুরকনব

@ ডুরকনব হ্যাঁ, আমি চ্যালেঞ্জটি আপডেট করেছি
ডাউনগোট

1. আমরা একটি ফাংশন জমা দিতে পারি? ২. আমরা কি এসটিডিএন / ফাংশন আর্গুমেন্ট থেকে ইনপুট নিতে পারি? ৩. আমাদের কি এক বা সমস্ত ইন্টেরেশন আউটপুট করতে হবে?
yyny

@ YYYoYonnY হ্যাঁ, ডিফল্টরূপে আপনি পারবেন (এই লিঙ্কটি আপনার দ্বিতীয় প্রশ্নেরও জবাব দেয়) । আপনি পুনরাবৃত্তি দ্বারা কী বোঝাতে চাই তা নিশ্চিত নই। উদাহরণগুলি একবার দেখুন, আপনাকে আউটপুট দিতে হবে
ডাউঙ্গোট

নেতৃস্থানীয় ফাঁকা লাইন অনুমোদিত?
নিল

উত্তর:



4

হাস্কেল, 101 বাইট

কোড গল্ফিংয়ের জন্য হাস্কেল কখনও দুর্দান্ত ছিলেন না ...

b="\n|__|__|"
h="   ____\n "
f 1=h++"  |__|"
f 2="_______"++b
f 3=h++"__|__|"++b
f n=f(n-2)++b
f _=""

এটা যদি আপনি এটি তাকান উপর নির্ভর করে। জাভা> পাইথন> হাস্কেল> গল্ফল্যাং। আমি পাইথন ব্যবহার করি;)
জে আত্কিন

আমার ভালো বর্ণন @JAtkin পিএইচপি উত্তর , তাহলে আপনি দেখুন সেখানে কি মত খারাপ
timmyRS

3

জাভাস্ক্রিপ্ট ES6, 80 বাইট

x=>(x%2?`   ____
 ${x<2?"  ":"__"}|__|`:x?"_______":"")+`
|__|__|`.repeat(x/2)

আমার জাপা উত্তরের মতো একই কৌশলটি ব্যবহার করে, এবং আশ্চর্যরকমভাবে খুব বেশি দীর্ঘ হয় না ...


1

সি, 104 102 বাইট

f(x){x?x%2?printf("   ____\n%3s|__|\n",x<2?"":"__"):puts("_______"):0;for(x/=2;x>0;x--)puts("|__|__|");}

এটি উন্নত করার জন্য আমি কিছু মুদ্রণ কৌশল ব্যবহার করতে পারি ...
সম্ভবত আমি তা পারি


1

𝔼𝕊𝕄𝕚𝕟, 53 অক্ষর / 67 বাইট

ï%2?`   ⟮__⟯Ⅰ
 ⦃ï<2?⍞  :⍞Ⅰ⦄|Ⅰ|`:ï?⍘_ď7:⬯⦄
|Ⅰ|Ⅰ|`ď ï/2

Try it here (Firefox only).

এটি জাভাস্ক্রিপ্ট ES6 উত্তরের সাথে বেশ মিল, যদিও আমি এটি স্বাধীনভাবে খুঁজে পেয়েছি। আমি গল্ফিং শেষ করার পরে আসার ব্যাখ্যা।


1

পিএইচপি, 134 অক্ষর

<?$i=$argv[1];if($i>0){echo($i%2===0?"_______\n|__":"   ____\n".($i>1?"___":"   "))."|__|\n";echo str_repeat("|__|__|\n",($i-1)/2);}?>

মন্তব্য:

  • পিএইচপি কোড গল্ফিংয়ের জন্য নির্মিত হয়নি
  • আমি নিশ্চিত এফইএন এই স্নিপেট তৈরি করেছিলাম
  • আরজিভি সংজ্ঞায়িত হলে এটি একটি ত্রুটি ছুঁড়ে
  • এটি সংক্ষিপ্ত করতে যে কোনও সহায়তা প্রশংসিত হয়।


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.