আপনার লক্ষ্য একটি ASCII আর্ট পাই চার্ট আউটপুট। এটি কোড-গল্ফ, তাই সংক্ষিপ্ততম প্রোগ্রাম (উত্স কোডের বাইটগুলি গণনা করে, অক্ষরগুলি নয়) জিতে যায়।
কোনও বাহ্যিক সফ্টওয়্যার বা API গুলি অনুমোদিত নয় প্রতিটি ভাষার কেবল স্থানীয় ভাষা।
বৃত্তের প্রারম্ভিক কোণ এবং দিক (ক্লকওয়াইজ / অ্যান্টলিকওয়াস) গুরুত্বপূর্ণ নয়। আউটপুটটি ডিম্বাকৃতি দেখতে পারে কারণ একটি অক্ষরের উচ্চতা সর্বদা তার প্রস্থের চেয়ে বেশি is
"ব্যাকগ্রাউন্ড" (পাই এর বাম বা ডানদিকে অক্ষর) অবশ্যই ফাঁকা স্থান।
ইনপুট হিসাবে আপনার তিনটি ভেরিয়েবল রয়েছে (দয়া করে এটি শুরু করার জন্য কোড পোস্ট করুন these
k
: অক্ষরের অ্যারে। প্রতিটি চরিত্র হ'ল পাই চার্টে ব্যবহার করতে হয়v
: ফ্লোটের অ্যারে। এটি প্রতিটি চরিত্রের শতাংশ। দৈর্ঘ্য দৈর্ঘ্যেরv
সমানk
। এর উপাদানগুলির যোগফল সর্বদা 1.0 থাকেr
: পূর্ণসংখ্যা> 1. এটি পাই চার্টের ব্যাসার্ধ।
বোনাস: যদি আপনি অসম্পূর্ণ পাই আউটপুট করতে পারেন তবে আপনার স্কোরের 20% বিয়োগ করুন ক্ষেত্রে ))।
s=lambda k,v,a:' 'if not v else k[0]if a<v[0]else s(k[1:],v[1:],a-v[0])
এবং সেফ-স্টেটমেন্টটিকে একটি লাইনে রাখার জন্য একটি অর্ধ-কোলন ব্যবহার করে 231 বাইটে হ্রাস করা যেতে পারেif x*x+y*y<r*r:a=atan2(y,x)/pi/2+.5;t=t+s(k,v,a)