এই চ্যালেঞ্জের জন্য, আপনার এমন একটি প্রোগ্রাম বা ফাংশন লিখতে হবে যা প্রদত্ত বর্গ ম্যাট্রিক্সের ডায়াগোনগুলি আউটপুট করে। তবে, আপনি যদি নিজের সমাধানের উত্স কোডের সারি এবং কলামগুলি স্থানান্তর করেন তবে এটি পরিবর্তে এমন একটি প্রোগ্রাম বা ফাংশনে পরিণত হবে যা ম্যাট্রিক্সের অ্যান্টিডিজোনালগুলি প্রদান করে। নির্দিষ্টকরণের জন্য পড়ুন ...
বিধি
- আপনার সমাধানের উত্স কোডটি আপনার পছন্দসই একটি স্ট্যান্ডার্ড নিউলাইন (লাইনফিড, ক্যারেজ রিটার্ন, বা উভয়ের সংমিশ্রণ) দ্বারা পৃথক করা অক্ষরের 2D গ্রিড হিসাবে বিবেচিত হবে।
আপনার উত্স কোডের কোনও লাইন পূর্বেরটির চেয়ে বেশি দীর্ঘ হতে পারে। এখানে বৈধ বিন্যাসের কয়েকটি উদাহরণ রয়েছে:
### ### ###
######## ####### ### ### #
এবং এখানে একটি অবৈধ বিন্যাসের উদাহরণ রয়েছে (তৃতীয় লাইনটি দ্বিতীয়টির চেয়ে দীর্ঘ):
###### #### ##### ###
আপনার দুটি সমাধান একে অপরের ট্রান্সপোজ হওয়া উচিত, এটি হ'ল সারি এবং কলামগুলি অদলবদল করে একে অপরের কাছ থেকে নেওয়া উচিত। এখানে দুটি বৈধ জোড় রয়েছে:
abc def ghi
adg beh cfi
এবং
print 10 (~^_^)~ foo bar !
p(fb! r~oa i^or n_ t^ ) 1~ 0
নোট করুন যে স্থানগুলি অন্য কোনও অক্ষরের মতো আচরণ করা হয়। বিশেষত, ট্র্যাকিং স্পেসগুলি তাৎপর্যপূর্ণ কারণ তারা ট্রান্সপোজের স্থানগুলি পিছনে নাও পারে।
প্রতিটি সমাধানটি এমন একটি প্রোগ্রাম বা ফাংশন হওয়া উচিত যা ইনপুট হিসাবে একক-অঙ্ক পূর্ণসংখ্যার একটি খালি খালি বর্গক্ষেত্রের ম্যাট্রিক্স গ্রহণ করে। একটি সমাধানের ম্যাট্রিক্সের সমস্ত ত্রিভুজগুলির একটি তালিকা আউটপুট করা উচিত এবং অন্যটি সমস্ত অ্যান্টিডিজোনালগুলির একটি তালিকা আউটপুট করে। আপনি যেকোন যুক্তিসঙ্গত, দ্ব্যর্থহীন ইনপুট এবং আউটপুট ফর্ম্যাটগুলি ব্যবহার করতে পারেন তবে দুটি সমাধানের মধ্যে সেগুলি অবশ্যই অভিন্ন হতে পারে (এর অর্থ তারা উভয় প্রোগ্রাম বা উভয় প্রোগ্রামই থাকতে হবে)।
- প্রতিটি তির্যক উপরের বাম থেকে নীচে ডানদিকে চলে এবং সেগুলি উপরে থেকে নীচে অর্ডার করা উচিত।
- প্রতিটি অ্যান্টিডিজোনাল নীচে থেকে বামে উপরের ডানদিকে চলে এবং সেগুলি উপরে থেকে নীচে অর্ডার করা উচিত।
স্কোরিং
যতটা সম্ভব "বর্গক্ষেত্র" সমাধানগুলিকে উত্সাহিত করার জন্য, প্রাথমিক স্কোর হ'ল সারি বা আপনার সমাধানের কলামগুলির সংখ্যা, যেটি বৃহত্তর । কম ভাল হয়। সলিউশনের অক্ষরের সংখ্যা দ্বারা টাইগুলি নষ্ট হয়ে গেছে , নতুন লাইনগুলি গণনা করছে না। আবার, কম ভাল হয়। উদাহরণ:
abcd
efg
h
এটি এবং এর ট্রান্সপোজের প্রাথমিক স্কোর 4 (যেমন 4 টি কলাম রয়েছে) এবং 8 -র একটি টাই-ব্রেকিং স্কোর (8 টি অ-নিউলাইন অক্ষর রয়েছে বলে) থাকবে। দয়া করে আপনার উত্তরের শিরোনামে উভয় মান উল্লেখ করুন।
পরীক্ষার মামলা
দুটি সমাধান দ্বারা সম্পাদিত প্রকৃত কাজটি এখানে প্রাথমিক চ্যালেঞ্জ হওয়া উচিত নয়, তবে আপনার সমাধানগুলি পরীক্ষা করতে আপনাকে এখানে দুটি উদাহরণ দেওয়া হয়েছে:
Input:
1 2 3
4 5 6
7 8 9
Diagonals:
3
2 6
1 5 9
4 8
7
Antidiagonals:
1
4 2
7 5 3
8 6
9
Input:
1 0 1 0
0 1 0 1
1 0 1 0
0 1 0 1
Diagonals:
0
1 1
0 0 0
1 1 1 1
0 0 0
1 1
0
Antidiagonals:
1
0 0
1 1 1
0 0 0 0
1 1 1
0 0
1