সি প্রোগ্রামিং ভাষায় অ্যারেগুলি এভাবে সংজ্ঞায়িত করা হয়:
int foo[] = {4, 8, 15, 16, 23, 42}; //Foo implicitly has a size of 6
অ্যারের আকারটি প্রাথমিককরণ উপাদানগুলি থেকে অনুমান করা হয়, যা এই ক্ষেত্রে is You আপনি এইভাবে একটি সি অ্যারেও লিখতে পারেন, স্পষ্টভাবে এটি আকার মাপুন এবং প্রতিটি উপাদানকে ক্রম অনুসারে সংজ্ঞায়িত করুন:
int foo[6]; //Give the array an explicit size of 6
foo[0] = 4;
foo[1] = 8;
foo[2] = 15;
foo[3] = 16;
foo[4] = 23;
foo[5] = 42;
চ্যালেঞ্জ
আপনাকে অবশ্যই এমন একটি প্রোগ্রাম বা ফাংশন লিখবেন যা অ্যারেগুলি প্রথম উপায়ে দ্বিতীয় দিকে প্রসারিত করবে। যেহেতু আপনি কোডটি দীর্ঘতর করার জন্য একটি প্রোগ্রাম লিখছেন এবং আপনি বিড়ম্বনা পছন্দ করেন, আপনার কোডটি যথাসম্ভব সংক্ষিপ্ত করে তুলতে হবে।
ইনপুটটি মূল অ্যারের প্রতিনিধিত্বকারী একটি স্ট্রিং হবে এবং আউটপুটটি প্রসারিত অ্যারে-সংজ্ঞা হবে। আপনি নিরাপদে ধরে নিতে পারেন যে ইনপুটটি সর্বদা এর মতো দেখাবে:
<type> <array_name>[] = {<int>, <int>, <int> ... };
"টাইপ" এবং "অ্যারে_নাম" পুরোপুরি বর্ণমালা অক্ষর এবং আন্ডারস্কোর দিয়ে তৈরি হবে _
। তালিকার উপাদানগুলি সর্বদা -2,147,483,648 থেকে 2,147,483,647 এর মধ্যে একটি নম্বর থাকবে। অন্য কোনও ফর্ম্যাটের ইনপুটগুলি হ্যান্ডেল করার দরকার নেই।
আপনার আউটপুটে শ্বেত স্পেসটি অবশ্যই পরীক্ষার আউটপুটে হোয়াইটস্পেসের সাথে অবশ্যই মিলবে, যদিও একটি অনুমানযোগ্য নতুন লাইনের অনুমতি রয়েছে allowed
পরীক্ষার আইও:
#in
short array[] = {4, 3, 2, 1};
#out
short array[4];
array[0] = 4;
array[1] = 3;
array[2] = 2;
array[3] = 1;
#in
spam EGGS[] = {42};
#out
spam EGGS[1];
EGGS[0] = 42;
#in
terrible_long_type_name awful_array_name[] = {7, -8, 1337, 0, 13};
#out
terrible_long_type_name awful_array_name[5];
awful_array_name[0] = 7;
awful_array_name[1] = -8;
awful_array_name[2] = 1337;
awful_array_name[3] = 0;
awful_array_name[4] = 13;
যে কোনও ভাষায় জমা দেওয়ার ক্ষেত্রে উত্সাহ দেওয়া হয়, তবে আপনি যদি এটি করতে পারেন তবে বোনাস পয়েন্ট এর মধ্যে সি
লিডারবোর্ড:
এখানে শীর্ষস্থানীয় উত্তরগুলি দেখানো একটি লিডারবোর্ড রয়েছে:
foo[0]=1;
গ্রহণযোগ্য হবে?