আপনি কীভাবে তাদের চেয়ারগুলি সাজানো হয়েছে তার জন্য আকর্ষণীয় অগ্রাধিকার সহ এক শ্রেণির শিক্ষার্থীদের পড়ান। চেয়ারগুলি কীভাবে সাজানো হয় তার জন্য তাদের রয়েছে 3 অত্যন্ত নির্দিষ্ট প্রয়োজনীয়তা:
এগুলি বেশিরভাগটি একটি আয়তক্ষেত্রের মধ্যে সাজানো থাকে, এর অর্থ কিছু চেয়ার খালি হয়ে যায়।
যতটা সম্ভব খালি চেয়ার থাকতে হবে।
এগুলি যথাসম্ভব "চৌকো" হতে হবে। স্কোয়ার-নেসটি আয়তক্ষেত্রের প্রস্থ এবং উচ্চতার মধ্যবর্তী দূরত্ব দ্বারা নির্ধারিত হয়, কম ভাল হয়। উদাহরণস্বরূপ, একটি আয়তক্ষেত্র যা
4x7
3 এর স্কোয়ার-নেস থাকে।
আরও সুনির্দিষ্টভাবে বলতে গেলে, বিন্যাসের "স্কোর" হ'ল প্রস্থ এবং উচ্চতা এবং খালি যে চেয়ারগুলির সংখ্যা রয়েছে তার মধ্যে দূরত্ব।
একটি উদাহরণ নেওয়া যাক। ধরা যাক আপনার 13 ছাত্র রয়েছে। আপনি এই যে কোনও উপায়ে চেয়ারগুলি সাজিয়ে রাখতে পারেন:
1x13
2x7
3x5
4x4
1x13
খুব চতুর নয়। আসলে, 1 এবং 13 পৃথক 12, তাই আমরা এই বিন্যাসটি 12 পয়েন্ট দিই give এটিতে 0 টি খালি চেয়ার রয়েছে, সুতরাং আমরা 0 পয়েন্ট যুক্ত করি, এই ব্যবস্থাটি 12 এর স্কোর প্রদান করে that যে দুর্দান্ত নয়।
2x7
অবশ্যই ভাল। 2 এবং 7 কেবল 5 টি পৃথক, তাই আমরা এই বিন্যাসটি 5 পয়েন্ট দেব। তবে, আপনি যদি সাতটি চেয়ারের 2 টি সারিটি সাজিয়ে রাখেন তবে 14 টি চেয়ার লাগবে যার অর্থ একটি চেয়ার খালি থাকবে। সুতরাং আমরা একটি বিন্দু যুক্ত করি, এই বিন্যাসটি 6 স্কোর দিয়ে।
আমরাও করতে পারতাম 3x5
। 3 এবং 5 2 টি পৃথক, সুতরাং +2 পয়েন্ট। এটি 15 টি চেয়ার নেয়, যার অর্থ আমাদের দুটি অতিরিক্ত চেয়ার থাকবে, সুতরাং 4 এর স্কোরের জন্য আরও একটি +2 পয়েন্ট।
শেষ বিকল্প 4x4
,। 4 এবং 4 0 টি পৃথক, তাই আমরা এই +0 পয়েন্ট দিই। 4x4 16 টি চেয়ার নেয়, সুতরাং 3 টি মোট 3 স্কোরের জন্য খালি খালি যায়, এটি সর্বোত্তম সমাধান।
টাইয়ের ক্ষেত্রে, সর্বোত্তম সমাধানটি হ'ল কম খালি চেয়ার।
চ্যালেঞ্জ
আপনাকে অবশ্যই এমন একটি প্রোগ্রাম বা ফাংশন লিখতে হবে যা একটি পূর্ণসংখ্যা গ্রহণ করে এবং সেই সংখ্যক শিক্ষার্থীর জন্য চেয়ারের সর্বোত্তম ব্যবস্থাটি আউটপুট করে। আইও যে কোনও যুক্তিসঙ্গত বিন্যাসে থাকতে পারে। এখানে 1 থেকে 100 পর্যন্ত যে কোনও সংখ্যক শিক্ষার্থীর নমুনা আউটপুট দেওয়া হচ্ছে:
1: (1, 1)
2: (1, 2)
3: (2, 2)
4: (2, 2)
5: (2, 3)
6: (2, 3)
7: (3, 3)
8: (3, 3)
9: (3, 3)
10: (2, 5)
11: (3, 4)
12: (3, 4)
13: (4, 4)
14: (4, 4)
15: (4, 4)
16: (4, 4)
17: (3, 6)
18: (3, 6)
19: (4, 5)
20: (4, 5)
21: (3, 7)
22: (5, 5)
23: (5, 5)
24: (5, 5)
25: (5, 5)
26: (4, 7)
27: (4, 7)
28: (4, 7)
29: (5, 6)
30: (5, 6)
31: (4, 8)
32: (4, 8)
33: (6, 6)
34: (6, 6)
35: (6, 6)
36: (6, 6)
37: (5, 8)
38: (5, 8)
39: (5, 8)
40: (5, 8)
41: (6, 7)
42: (6, 7)
43: (5, 9)
44: (5, 9)
45: (5, 9)
46: (7, 7)
47: (7, 7)
48: (7, 7)
49: (7, 7)
50: (5, 10)
51: (6, 9)
52: (6, 9)
53: (6, 9)
54: (6, 9)
55: (7, 8)
56: (7, 8)
57: (6, 10)
58: (6, 10)
59: (6, 10)
60: (6, 10)
61: (8, 8)
62: (8, 8)
63: (8, 8)
64: (8, 8)
65: (6, 11)
66: (6, 11)
67: (7, 10)
68: (7, 10)
69: (7, 10)
70: (7, 10)
71: (8, 9)
72: (8, 9)
73: (7, 11)
74: (7, 11)
75: (7, 11)
76: (7, 11)
77: (7, 11)
78: (9, 9)
79: (9, 9)
80: (9, 9)
81: (9, 9)
82: (7, 12)
83: (7, 12)
84: (7, 12)
85: (8, 11)
86: (8, 11)
87: (8, 11)
88: (8, 11)
89: (9, 10)
90: (9, 10)
91: (7, 13)
92: (8, 12)
93: (8, 12)
94: (8, 12)
95: (8, 12)
96: (8, 12)
97: (10, 10)
98: (10, 10)
99: (10, 10)
100: (10, 10)
যথারীতি, এটি কোড-গল্ফ, সুতরাং মানক লুফোলগুলি প্রয়োগ হয় এবং বিজয়ী হ'ল বাইটগুলির মধ্যে সংক্ষিপ্ত উত্তর।