এটি একটি সহজ: একটি ASCII গ্যান্ট চার্ট মুদ্রণ করুন ।
প্রদত্ত টাস্কের ব্যাপ্তি (শুরুর সময় - শেষ সময় টিপলস), -
প্রতিটি টাস্কের সময়কালের জন্য অক্ষরের আকারে একটি গ্যান্ট টাইমলাইন মুদ্রণ করুন - প্রতিটি টাস্ককে একটি নতুন লাইনে।
উদাহরণ
বলুন আমার কাজগুলির ব্যাপ্তি 28->35, 34->40, 39->44
হ'ল, গ্যান্ট এইরকম দেখবে:
-------
------
-----
বিশেষ উল্লেখ
- আপনি একটি সম্পূর্ণ প্রোগ্রাম, একটি নামকৃত ফাংশন বা কোনও বেনামি ফাংশন লিখতে পারেন।
- আপনার প্রোগ্রাম / ফাংশনটি STDIN এর মাধ্যমে বা যুক্তি হিসাবে কাজগুলি গ্রহণ করবে ।
- প্রতিটি টাস্কের একটি স্ট্রিং হিসাবে প্রতিনিধিত্ব করা উচিত
start->end
যেখানেstart
এবংend
আছে ইন্টিজার । কার্যগুলি স্পেস বা কমা দ্বারা পৃথক করা হয়। বিকল্পভাবে , আপনি এটি পূর্ণসংখ্যার টুপল হিসাবে বা 2 সংখ্যার অ্যারে / সংগ্রহ হিসাবে পেতে পারেন। (উদাহরণস্বরূপ, জাভাস্ক্রিপ্টে আপনি এটি এটি হিসাবে পেতে পারেন[start,end]
- এটি অনুমোদিত)। - যেকোন অ-নেতিবাচক সংখ্যা (আর্গুমেন্ট) সমর্থন করা উচিত।
এটি পরিষ্কার করার জন্য, কার্য সংগ্রহের একক যুক্তি অনুমোদিত নয়। আপনি হয় একটি একক স্ট্রিং আর্গুমেন্টকে পার্স করতে পারেন, বা শূন্য বা আরও বেশি কার্য যুক্তি সমর্থন করতে পারেন। যেখানে টাস্ক একটি টিপল বা আকার 2 এর সংগ্রহ।- আপনি ধরে নিতে পারেন কেবল বৈধ ইনপুট দেওয়া হবে। তার মানে, প্রতিটি কাজের ইতিবাচক সময়কাল থাকে has
- রিটার্ন মানটি কিছু যায় আসে না, আপনার কোডটি অবশ্যই STDOUT এ টাইমলাইন মুদ্রণ করবে।
- আউটপুট: প্রতিটি কার্যক্রমে
start
ফাঁকা স্থান এবং এর পরে(end-start)
ড\n
। - বলা বাহুল্য, আউটপুট লাইনগুলি আনুষ্ঠানিকভাবে ইনপুট (কার্য) আদেশের সাথে অর্ডার করা উচিত।
\n
অনুমতি দেওয়ার আগে স্পেস ফাঁকা রাখা , যদি এটি আপনাকে সহায়তা করে।
পরীক্ষার মামলা
Input:
(empty)
Output:
(empty)
Input:
0->7,5->6,3->6
Output:
-------
-
---
Input:
5->20,5->20,2->10,15->19
Output:
---------------
---------------
--------
----
জয়লাভ
- এটি কোড-গল্ফ তাই সর্বনিম্ন কোড দৈর্ঘ্য (বাইটে) জিতে।
- Ditionতিহ্যগতভাবে, টাই ব্রেকার আগের পোস্ট।
- "স্ট্যান্ডার্ড লুফোলগুলি আর মজার নয়"।
-----
সম্পাদনা
আপনারা অনেকেই বুঝতে পেরেছিলেন যে এটির একটি একক টাস্ক সংগ্রহের আর্গুমেন্ট থাকার অনুমতি রয়েছে এবং যেহেতু এটির সাথে মূল ভার্সাগুলির প্রয়োজনীয়তার মধ্যে খুব একটা আলাদা নয়, এখন আপনি যদি ব্যবহার করতে না চান তবে এটি একটি একক সংগ্রহের যুক্তি রাখার অনুমতি পেয়েছে you varargs বিকল্প, অথবা যদি আপনার ভাষা varargs সমর্থন করে না।
arguments
ফাংশনটির মধ্যে পুনরাবৃত্তি করতে পারেন, তবে আপনি এটি ধরে নিতে পারেন না যে arguments[0]
এটি কার্যগুলির একটি অ্যারে।
To make it clear...
) মোটেই পরিষ্কার নয়।