আপনি কি সেই বিস্ফোরিত-দর্শন চিত্রগুলি পছন্দ করেন না যেখানে কোনও মেশিন বা বস্তুকে তার ক্ষুদ্রতম টুকরোতে আলাদা করা হয়?
একটি স্ট্রিং যে এটি করা যাক!
চ্যালেঞ্জ
একটি প্রোগ্রাম বা ফাংশন লিখুন যে
- কেবল মুদ্রণযোগ্য ASCII অক্ষরযুক্ত একটি স্ট্রিং ইনপুট করে ;
- স্ট্রিংটিকে ফাঁকা স্থান সমান অক্ষরের গ্রুপগুলিতে বিচ্ছিন্ন করে দেয় (স্ট্রিংয়ের "টুকরা");
- গ্রুপগুলির মধ্যে কিছু বিভাজক সহ কোনও সুবিধাজনক বিন্যাসে এই দলগুলিকে আউটপুট দেয় ।
উদাহরণস্বরূপ, স্ট্রিং দেওয়া
Ah, abracadabra!
আউটপুট নিম্নলিখিত গ্রুপ হবে:
! , একজন AAAAA বেড এন্ড ব্রেকফাস্ট গ ঘ জ RR
আউটপুটে প্রতিটি গ্রুপে ফাঁকা স্থান সরিয়ে সমান অক্ষর থাকে। একটি নতুন লাইন গ্রুপগুলির মধ্যে বিভাজক হিসাবে ব্যবহৃত হয়েছে। নীচে অনুমোদিত ফর্ম্যাটগুলি সম্পর্কে আরও।
বিধি
ইনপুট একটি স্ট্রিং বা অক্ষর একটি শ্রেণীবিন্যাস হওয়া উচিত। এটিতে কেবল মুদ্রণযোগ্য এএসসিআইআই অক্ষর থাকবে (স্থান থেকে টিল্ড পর্যন্ত অন্তর্ভুক্ত)। যদি আপনার ভাষা এটি সমর্থন করে না, তবে আপনি ASCII কোডগুলি উপস্থাপন করে এমন সংখ্যার আকারে ইনপুট নিতে পারেন।
আপনি ধরে নিতে পারেন ইনপুটটিতে কমপক্ষে একটি অ-স্থান অক্ষর রয়েছে ।
আউটপুট হওয়া উচিত অক্ষর (ইনপুট ASCII কোড মানে হয় এমনকি যদি)। গোষ্ঠীগুলির মধ্যে একটি দ্ব্যর্থহীন বিভাজক থাকতে হবে, ইনপুটটিতে প্রদর্শিত হতে পারে এমন কোনও স্থান-নির্ধারিত অক্ষরের চেয়ে আলাদা।
যদি আউটপুটটি ফাংশন রিটার্নের মাধ্যমে হয় তবে এটি একটি অ্যারে বা স্ট্রিং বা অক্ষরের অ্যারে বা একই ধরণের কাঠামো হতে পারে। সেক্ষেত্রে কাঠামোটি প্রয়োজনীয় বিচ্ছেদ সরবরাহ করে।
প্রতিটি গ্রুপের অক্ষরের মধ্যে একটি বিভাজক is চ্ছিক । যদি একটি থাকে তবে একই নিয়মটি প্রয়োগ করা হয়: এটি কোনও ফাঁকা স্থান নয় যা ইনপুটটিতে উপস্থিত হতে পারে appear এছাড়াও, এটি গ্রুপগুলির মধ্যে ব্যবহৃত একই বিভাজক হতে পারে না।
তা ছাড়া, বিন্যাসটি নমনীয়। এখানে কিছু উদাহরন:
গ্রুপগুলি নতুন লাইনের দ্বারা স্ট্রিং পৃথক করা যেতে পারে, যেমন উপরে দেখানো হয়েছে।
গোষ্ঠীগুলি কোনও অ-এসসিআইআই অক্ষর দ্বারা পৃথক করা যেতে পারে, যেমন
¬
। উপরের ইনপুটটির আউটপুটটি স্ট্রিং হবে:!¬,¬A¬aaaaa¬bb¬c¬d¬h¬rr
গ্রুপগুলি n > 1 স্পেস দ্বারা পৃথক করা যেতে পারে (এমনকি এন পরিবর্তনশীল হলেও ), প্রতিটি গ্রুপের মধ্যে একটি একক স্পেস দ্বারা পৃথক পৃথক অক্ষর:
! , A a a a a a b b c d h r r
আউটপুটটি কোনও ফাংশন দ্বারা ফিরে আসা অ্যারের বা স্ট্রিংগুলির তালিকাও হতে পারে:
['!', 'A', 'aaaaa', 'bb', 'c', 'd', 'h', 'rr']
বা চর অ্যারেগুলির একটি অ্যারে:
[['!'], ['A'], ['a', 'a', 'a', 'a', 'a'], ['b', 'b'], ['c'], ['d'], ['h'], ['r', 'r']]
নিয়ম অনুসারে বিন্যস্ত ফর্ম্যাটগুলির উদাহরণ:
- কমা বিভাজক (
!,,,A,a,a,a,a,a,b,b,c,d,h,r,r
) হিসাবে ব্যবহার করা যায় না , কারণ ইনপুটটিতে কমা থাকতে পারে। - গোষ্ঠীগুলির মধ্যে বিভাজক (
!,Aaaaaabbcdhrr
) বিভক্ত করতে বা গোষ্ঠীগুলির মধ্যে এবং গোষ্ঠীগুলির মধ্যে একই বিভাজক ব্যবহার করার জন্য এটি গ্রহণযোগ্য নয়! , A a a a a a b b c d h r r
।
গ্রুপগুলি আউটপুটে যে কোনও ক্রমে উপস্থিত হতে পারে । উদাহরণস্বরূপ: বর্ণানুক্রমিক ক্রম (উপরের উদাহরণগুলির মতো), স্ট্রিংয়ে প্রথম উপস্থিতির ক্রম, ... ক্রমটি সামঞ্জস্যপূর্ণ বা এমনকি নির্বিচারক হওয়া দরকার না।
নোট করুন যে ইনপুটটিতে নতুন লাইন অক্ষর থাকতে পারে না এবং A
এবং a
বিভিন্ন অক্ষর (গ্রুপিং কেস-সেন্ডেটিভ )।
বাইটস মধ্যে সংক্ষিপ্ত কোড।
পরীক্ষার মামলা
প্রতিটি পরীক্ষার ক্ষেত্রে, প্রথম লাইনটি ইনপুট হয় এবং বাকী রেখাগুলি আউটপুট হয়, প্রতিটি গ্রুপের সাথে আলাদা আলাদা লাইনে থাকে।
পরীক্ষার কেস 1:
আহ, অবাকদব্র! ! , একজন AAAAA বেড এন্ড ব্রেকফাস্ট গ ঘ জ RR
পরীক্ষার কেস 2:
\ ণ / \ ণ / \ ণ / /// \\\ OOO
পরীক্ষার কেস 3:
একজন মানুষ, পরিকল্পনা, খাল: পানামা! ! ,, : একজন পি পামেল পিয়ালকে কি বলে গ করব মিমি NNNN পি
পরীক্ষার কেস 4:
"আপনি কীভাবে সেই কৌশলটি করেন তা আমাকে দেখান, যে আমাকে চিৎকার করে তোলে" তিনি বলেছিলেন "" , এস AAAAA সিসি DD eeeeeee hhhhhh আ কে কে MMMM এন ooooo RR এখন কি করা উচিত tttttt তোমার দর্শন লগ করা WW Y