নগদ অর্থের অভাবে আপনি বিশ্বের বৃহত্তম ডিজিটাল ডোনাট সংস্থা ডোনট শপ for এর জন্য ডোনাট তৈরির জন্য সাইন আপ করেছেন, বেশিরভাগ কারণেই তারা প্রতিটি আকারের ডোনাট কল্পনাপ্রসূতভাবে বিক্রি করে।
এখন, ট্রেডিং স্ট্যান্ডার্ড যেহেতু আজকাল খুব শক্ত, আপনি এই ডোনাটগুলি তৈরি করার জন্য যতটা সম্ভব সংক্ষিপ্ত কোড লিখতে হবে যাতে তাদের তৈরি করা উত্স কোডটি প্যাকেটের বাইরের অংশে স্থাপন করা যায়।
চ্যালেঞ্জ
চারটি ইনপুট দেওয়া হয়েছে, বাইরের আংটির ব্যাসার্ধ, অভ্যন্তরের আংটির ব্যাসার্ধ, সম্ভাব্য ছিটানো এবং একটি ছিটিয়ে থাকা কোনও কোষের সম্ভাবনা, সেই ছিটিয়ে থাকা একটি ডোনাট আউটপুট দেয় যা সঠিক অভ্যন্তরীণ এবং বাহ্যিক রেডিয়ি রয়েছে।
- আপনি কীভাবে ইচ্ছা (ইনপুটটি কোনও ফাংশন, স্টিডিন, প্রোগ্রাম আর্গুমেন্ট) এবং যে কোনও ক্রমে গ্রহণ করা যেতে পারে The
- স্প্রিংলগুলি প্রতিটি স্প্রিংল টাইপের জন্য 1 টি চরিত্রের আকারে দেওয়া হবে
^+*-যেমন ছিটিয়ে ইনপুট 4 সিঁচিত একটি তালিকা হবে,^,+,*,-- একটি ছিটিয়ে সম্ভাবনা 0 এবং 1 এর উদাঃ মধ্যে একটি ফ্লোটিং পয়েন্ট মান হিসাবে প্রবেশ করানো হবে:
0.1,0.23
- আপনাকে আউটপুটটি স্টাডআউট বা সমমানের প্রিন্ট করতে হবে।
- ছিটানো ডোনাটের কিনারে থাকতে পারে না।
- প্রতিটি ধরণের ছিটিয়ে প্রতিটি কোষে থাকার সম্ভাবনা সমান সম্ভাবনা থাকতে হবে।
- রেডিয়ি 1-সেল ইউনিটে দেওয়া হয়।
- যদি অভ্যন্তরীণ ব্যাসার্ধ 0 বা বাহ্যিক ব্যাসার্ধের সমান হয় তবে ডোনাটের কোনও রিং নেই বলে জানা যায়।
- উভয় রাশিই অ-নেতিবাচক পূর্ণসংখ্যা হবে।
- ডোনের অভ্যন্তরীণ এবং বাহ্যিক প্রান্তগুলি হ্যাশগুলি ব্যবহার করে প্রতিনিধিত্ব করতে হবে (
#) একটি বিন্দুটি একটি বৃত্তে রয়েছে কিনা তা পরীক্ষা করে একটি ব্যাসার্ধ দেওয়া হয় এবং বৃত্তের কেন্দ্র হয়:
(x-center)**2+(y-center)**2 < radius**2
আউটপুট সহ উদাহরণস্বরূপ ইনপুট
(বাইরের ব্যাসার্ধ, অভ্যন্তরের ব্যাসার্ধ, ছিটিয়ে দেওয়া, ছিটিয়ে দেওয়ার সম্ভাবনা)
10, 4, "^ + * -", 0.1
######### # # ## ++ * *## # # # ^^ - * # # ##### ^ # #+ # # # # # #- # # # # * # # # #+ # # # # # #^ +# # # # # # # # * ##### # # + - # # ^ # ## ^ + ## # ^ # #########5, 2, ": ^ + *", 0.9
##### #^^+ ^# #**### # #:# #^# #^# #*# #:# #*# #:+###* # # *:^:# #####
এটি কোড গল্ফ, বাইট জেতে সংক্ষিপ্ত উত্তর
10, 4এবং 5, 2বেশ আলাদা। আমি উত্তরের উপর একটি মন্তব্য করতে যাচ্ছি, তবে আমি বুঝতে পেরেছিলাম যে আউটপুটটি কোনও মাত্রার জন্য দেখতে কেমন হওয়া উচিত তবে উদাহরণগুলির মতো really আপনি যদি উত্তরটি থেকে আউটপুটটির সাথে আপনার মূল ধারণাটি পরিবর্তন করতে চান তবে এটি আপনার উপর নির্ভর করে, তবে চ্যালেঞ্জটি স্পষ্টভাবে সংজ্ঞায়িত করা উচিত যে কীভাবে কোনওভাবে সীমানা আঁকতে হবে।