এটি কোড গল্ফ। এই চ্যালেঞ্জের জন্য, আমি একটি পদ্ধতি গ্রহণ করব (আপনার একটি সম্পূর্ণ প্রোগ্রামের প্রয়োজন নেই), তবে পদ্ধতিটির স্বাক্ষরটি বাইট গণনা অনুসারে গণনা করে এবং আমি সম্পূর্ণ স্বাক্ষর (লামদ্বা নয়) দেখতে চাই। পদ্ধতির জন্য ইনপুটটি 81 টি উপাদান সহ একটি পূর্ণসংখ্যা অ্যারে। পদ্ধতি থেকে আউটপুট / রিটার্ন মান হ'ল একটি স্ট্রিং যা অ্য্যাসিকে সুডোকু বোর্ড হিসাবে অ্যারের প্রতিনিধিত্ব করে।
যদি আপনি কোনও গৌরবময় ভাষা বা এমন কোনও কিছু ব্যবহার করেন যা একেবারেই পদ্ধতিতে না থাকে তবে আপনি মানিয়ে নিতে পারেন, তবে ভাষাটি যদি একেবারেই সমর্থন করে তবে আমি দেখতে চাই যে কোনও কিছু আসলে "সত্যিকারের" বর্ণাolf্য প্রোগ্রামে যুক্ত হতে পারে, এমনকি যদি পদ্ধতি শরীর নিজেই সঙ্গে কাজ করার জন্য একটি ব্যথা হয়। প্রয়োজনীয়তাটি জেলি বা 05 এবি 1 ই এর মতো ভাষাগুলিকে ব্লক করা নয়, জাভা-র মতো ভাষার পক্ষে এমন কিছু তৈরি করা সহজতর করা যা এই প্ল্যাটফর্মটির জন্য অর্থ তৈরি করে।
ইনপুটটির জন্য, পূর্ণসংখ্যা মানগুলির 1-9 এর সুস্পষ্ট অর্থ হওয়া উচিত। একটি 0 সর্বদা ফাঁকা ঘর হিসাবে ব্যাখ্যা করা উচিত। আপনি 1-9 রেঞ্জের বাইরে অন্য যে কোনও কিছুই ফাঁকা ঘর হিসাবে ব্যাখ্যা করতে পারেন, তবে এটি প্রয়োজন হয় না। অ্যারে থেকে ধাঁধাতে অবস্থান নির্ধারণ শীর্ষ বাম থেকে শুরু হয় এবং পরের সারিতে যাওয়ার আগে বাম থেকে ডানে প্রতিটি সারি পূরণ করে।
বাক্সগুলির জন্য, আমি বাইরের চারপাশে এবং প্রতিটি 3x3 অঞ্চলের মধ্যে ডাবল লাইন এবং অন্যান্য ঘরগুলির মধ্যে একক লাইন চাই। এগুলি লাইন অঙ্কন অক্ষরগুলির সাথে আঁকতে হবে (যদি আপনার আই / ও ফর্ম্যাটটি অক্ষরের অনুক্রমের পরিবর্তে বাইটের ক্রম হিসাবে স্ট্রিংগুলি উপস্থাপন করে তবে আপনাকে সেগুলি ইউটিএফ -8 বা কোডপেজ 347 এর মতো একটি সুপরিচিত এনকোডিংয়ে উপস্থাপন করা উচিত)।
এই চ্যালেঞ্জের জন্য, আমি আপনাকে সুডোকু ধাঁধা তৈরি করতে বলছি না । এটি ফাংশনের ইনপুট। আমি আপনাকে ধাঁধা সমাধান করতে বলছি না । আমি আপনাকে যা দিচ্ছি তা "আঁকতে" একটি স্ট্রিং তৈরি করতে বলছি (যতটা সম্ভব কম বাইটে)।
উদাহরণ ইনপুট:
অ্যারের মানসমূহ:
{ 8, 5, 0, 0, 0, 2, 4, 0, 0, 7, 2, 0, 0, 0, 0, 0, 0, 9, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 7, 0, 0, 2, 3, 0, 5, 0, 0, 0, 9, 0, 0 ,0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 7, 0, 0, 1, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 6, 0, 4, 0}
মানগুলি আপনার ভাষার জন্য প্রাকৃতিক যেকোন প্রক্রিয়াটি ব্যবহার করতে পারে: int [], অ্যারেলিস্ট, সিক্যুয়েন্স, টিপল, অঙ্কের স্ট্রিং, যাই হোক না কেন, যতক্ষণ না প্রতিটি কক্ষের ইনপুটটিতে আপনার মান থাকে (শুধুমাত্র জনবহুল কক্ষের অবস্থানের জন্য কোনও মানচিত্র থাকে না) )। মনে রাখবেন যে ইনপুট সরবরাহ করা হয়েছে ... এটি আপনার বাইট গণনার অংশ নয়। তবে ইনপুটটি কোনও সুডোকু ধাঁধা উপস্থাপন করতে পারে এবং ধাঁধাটির কোনও বৈধ সমাধান নাও হতে পারে । আপনি ধাঁধাটি মুদ্রণযোগ্য বলে ধরে নিতে পারেন । উদাহরণস্বরূপ, আপনি 82 উপাদানগুলির সাথে কিছু পাবেন না।
আপনি একটি যুক্তিসঙ্গত স্থির-প্রস্থের ফন্টও ধরে নিতে পারেন।
সংশ্লিষ্ট আউটপুট:
╔═══╤═══╤═══╦═══╤═══╤═══╦═══╤═══╤═══╗ ║ 8 │ 5 │ ║ │ │ 2 ║ 4 │ │ ║ ║ ╟───┼───┼───╫───┼───┼───╫───┼───┼───╢ ║ 7 │ 2 │ ║ │ ║ │ │ 9 ║ ║ ╟───┼───┼───╫───┼───┼───╫───┼───┼───╢ ║ │ │ 4 ║ │ │ │ │ │ ║ ║ ╠═══╪═══╪═══╬═══╪═══╪═══╬═══╪═══╪═══╣ ║ │ │ ║ 1 │ │ 7 ║ │ │ 2 ║ ║ ╟───┼───┼───╫───┼───┼───╫───┼───┼───╢ ║ 3 │ │ 5 ║ │ │ ║ 9 │ │ ║ ║ ╟───┼───┼───╫───┼───┼───╫───┼───┼───╢ │ │ 4 │ ║ │ ║ │ │ │ ║ ║ ╠═══╪═══╪═══╬═══╪═══╪═══╬═══╪═══╪═══╣ │ │ │ ║ │ 8 │ ║ │ 7 │ ║ ║ ╟───┼───┼───╫───┼───┼───╫───┼───┼───╢ │ │ 1 │ 7 ║ │ │ ║ │ │ ║ ║ ╟───┼───┼───╫───┼───┼───╫───┼───┼───╢ │ │ ║ │ 3 │ 6 ║ │ 4 │ ║ ║ ╚═══╧═══╧═══╩═══╧═══╧═══╩═══╧═══╧═══╝