এই চ্যালেঞ্জটি এই দুর্দান্ত অ্যানিমেটেড ডায়াগ্রাম দ্বারা অনুপ্রাণিত হয়েছে (চ্যাটে পোস্ট করার জন্য flawr ধন্যবাদ)।
একটি ইনপুট দেওয়া হয়েছে n
, নির্দিষ্ট হিসাবে বিন্দুগুলির নেস্টেড বহুভুজ হিসাবে এর সমস্ত মৌলিক উপাদানগুলি আঁকুন।
উদাহরণস্বরূপ, সংখ্যাটি প্রদত্ত 357 = 17x7x3
, আপনি একটি ত্রিভুজের 3 টি বিন্দু, একটি হেপটাগনে সেই ত্রিভুজগুলির 7 সংস্করণ এবং 17-গনগুলিতে he হেপাটাগনের 17 সংস্করণ সজ্জিত করুন। সংক্ষেপে, নেস্টেড বহুভুজগুলি বাইরের বৃহত্তম প্রধান ফ্যাক্টর থেকে ভিতরের ক্ষুদ্রতম দিকে চলে যাচ্ছে। কারণ 357
, আপনার উত্তরটি দেখতে কিছুটা দেখতে (রঙ সহ বা বর্ণহীন) হওয়া উচিত:
প্রতিটি প্রাইমের প্রতিটি বহুভুজ >= 3
ডায়াগ্রামের চারদিকে ঘোরানো উচিত নয়।
একমাত্র ব্যতিক্রম প্রধান 2
, বিশেষত বিজোড় শক্তির জন্য 2
। যেমন আপনি 376 = 47x2x2x2
নীচের উদাহরণে দেখতে পাচ্ছেন , 8
এসগুলি ঘোরানো হয় এবং s এর একক লাইন নয় 2
, তবে এটি 4
বর্গক্ষেত্রের জন্য উল্লম্ব স্ট্যাক ks এমনকি 2
স্কোয়ারগুলিতে সাজানো শক্তিগুলিও এইভাবে ঘোরানোর দরকার নেই।
আসলে, 448 = 7x2x2x2x2x2x2
একটি ডায়াগ্রাম রয়েছে যা 64
এর হেপাটাগনের মতো দেখায় এবং 64
এটি একটি স্কোয়ারের স্কোয়ারে সাজানো হয় তবে কোনও আবর্তন ছাড়াই।
আরও দুটি উদাহরণ 440 = 11x5x2x2x2
এবং 432 = 3x3x3x2x2x2x2
। আমরা দেখতে পাই যে 440
2 এর একটি বিজোড় শক্তি দিয়ে 8
গুলি ঘুরেছে , তবে এর 432
একটি এমনকি শক্তির সাথে 2
এর 16
গুলি ঘোরান না ।
এবং পরিশেষে, এখানে 10 = 5x2
পাইথন এবং এর turtle
মডিউলটি নিয়ে মশকরা করা রঙ ছাড়াই এখানে একটি সর্বনিম্ন উদাহরণ ।
চ্যালেঞ্জ
- একটি ইনপুট দেওয়া হয়েছে
n
যেখানে1 <= n <= 10000
, তার নেস্টেড ফ্যাক্টর বহুভুজগুলির একটি চিত্র আউটপুট দেয়। - বিধিগুলি হ'ল:
- চিত্রটি বিন্দুগুলির নেস্টেড বহুভুজ দ্বারা গঠিত, একটি বহুভুজ থেকে বাইরের দিকে (বৃহত্তম প্রাইম ফ্যাক্টর) পাশের অভ্যন্তরে ক্ষুদ্রতম প্রধান উপাদান পর্যন্ত।
- 2 ফ্যাক্টরের জন্য, 2 এর শক্তিগুলি একটি রেখা, তারপরে একটি বর্গক্ষেত্র, তারপরে স্কোয়ারগুলির একটি লাইন এবং এই জাতীয় হিসাবে স্ট্যাক করা উচিত। এমনকি 2 এর শক্তি ঘোরানো উচিত নয়। 2 এর বিজোড় শক্তিগুলি তাদের নিজ নিজ বহুভুজগুলির চারদিকে ঘোরানো উচিত এবং এগুলি ঘোরার আগে উল্লম্বভাবে স্ট্যাক করা উচিত।
- আপনি পছন্দ মতো ইমেজটি ওরিয়েন্ট্ট করতে পারেন (যদিও আমি পছন্দ করি) তবে প্রতিটি নেস্টেড বহুভুজ 2 এর বিজোড় শক্তির একক ব্যতিক্রম ব্যতীত অন্য বহুভুজ হিসাবে একই দিকের মুখোমুখি হওয়া উচিত।
- আপনার কাছে চিত্রের আকার এবং বিন্দু আকারের জন্য দুটি বিকল্প রয়েছে:
- চিত্রের আকার স্থিতিশীল এবং বিন্দুর আকার হ্রাস
n
পায় (অ্যানিমেশন হিসাবে) as - বিন্দু আকার স্থিতিশীল এবং চিত্র আকার বৃদ্ধি হিসাবে
n
বৃদ্ধি পায়।
- চিত্রের আকার স্থিতিশীল এবং বিন্দুর আকার হ্রাস
- বহুভুজগুলির প্রথম তিনটি স্তর প্রতিবেশী বহুভুজ (যেমন স্পর্শ নয়) থেকে পৃথক হওয়া উচিত, তবে আশেপাশের চিত্রগুলির আকার বিবেচনা করে
n=10000
যদি স্তরগুলি স্পর্শ করা শুরু করে তবে ঠিক আছে। আমি এটি পছন্দ করি না যদি তারা না করে তবে স্ট্যাক এক্সচেঞ্জে আপলোডযোগ্য এমন কোনও চিত্রের সাথে এটি ফিট করা অবশ্যম্ভাবী হতে পারে। - রঙ .চ্ছিক।
- বিন্দুর আকার আপনার উপর নির্ভর করে। স্কোয়ারগুলি যদি আপনার ভাষার জন্য ভাল হয় তবে সেগুলি ব্যবহার করুন।
- কোনও বোনাস নেই, তবে আমি কাউকে মূল পোস্টে ডায়াগ্রামগুলি অ্যানিমেটেড এবং রঙ করতে চাই।
এই প্রশ্নটি লেখার ক্ষেত্রে সহায়তার জন্য কনর ও ব্রায়ান, ইস্টারলিআইর্ক, মার্টিন ইন্ডার, ক্রিটিক্সী লিথোস, মেগো, ডিজে ম্যাকমেহেম এবং এল'েন্ডিয়া স্টারম্যানকে ধন্যবাদ জানাই।
এই কোড গল্ফ, তাই সংক্ষিপ্ততম কোড জিতেছে। শুভকামনা এবং ভাল গল্ফিং!
n = n //= i
কথাn//= i
?