নির্বাহী সারসংক্ষেপ
ইনপুট দেওয়া k
, পূর্ণসংখ্যার একটি পার্টিশন খুঁজে 1
থেকে n
মধ্যে k
বৃহত্তম জন্য সমষ্টি-মুক্ত সাব-সেট নির্বাচন n
10 মিনিটের মধ্যে আপনি যা করতে পারেন।
পটভূমি: শুর সংখ্যা
একটি সেট A
হয় সমষ্টি-মুক্ত যদি তার স্ব-সমষ্টি A + A = { x + y | x, y in A}
এটা সঙ্গে সাধারণ কোন উপাদানগুলি নেই।
প্রত্যেক ধনাত্মক পূর্ণ সংখ্যা জন্য k
সেখানে পূর্ণসংখ্যা একটি বৃহত্তম S(k)
যেমন যে সেট {1, 2, ..., S(k)}
বিভক্ত করা যেতে পারে k
সমষ্টি-মুক্ত সাব-সেট নির্বাচন। এই সংখ্যাটিকে কে থ শুর নাম্বার (OEIS A045652 ) বলা হয়।
উদাহরণস্বরূপ S(2) = 4
,। আমরা {1, 2, 3, 4}
হিসাবে পার্টিশন করতে পারি {1, 4}, {2, 3}
, এবং এটি দুটি যোগ-মুক্ত সাবসেটগুলিতে অনন্য পার্টিশন, তবে আমরা এখন 5
উভয় অংশে একটি যোগ করতে পারি না ।
চ্যালেঞ্জ
একটি নিরোধক প্রোগ্রাম লিখুন যা নিম্নলিখিতগুলি করে:
k
ইনপুট হিসাবে একটি ধনাত্মক পূর্ণসংখ্যা নিন Take- স্টডআউটে বর্তমান ইউনিক্স টাইমস্ট্যাম্প লিখুন
- বর্তমান ইউনিক্স টাইমস্ট্যাম্পের সাথে প্রতিটি ক্রম অনুসরণ করে বৃদ্ধি
1
করারn
জন্যk
যোগ-মুক্ত সাবসেটে পার্টিশনের একটি ক্রম আউটপুট দেয়n
।
বিজয়ী হ'ল এমন প্রোগ্রাম যা n
ইনপুট দেওয়ার সময় আমার কম্পিউটারে 10 মিনিটের মধ্যে বৃহত্তমের জন্য একটি পার্টিশন প্রিন্ট করে 5
। n
তিনটি রানের গড় গড়ে সবচেয়ে বড় পার্টিশন খুঁজে পাওয়ার জন্য দ্রুততম সময়ের সাথে সম্পর্ক ছিন্ন করা হবে : এজন্য আউটপুটটিতে টাইমস্ট্যাম্প অন্তর্ভুক্ত করা উচিত।
গুরুত্বপূর্ণ বিশদ:
- আমার উবুন্টু যথার্থতা রয়েছে, সুতরাং আপনার ভাষাটি সমর্থন না করা থাকলে আমি এটি স্কোর করতে অক্ষম।
- আমার একটি ইন্টেল কোর 2 কোয়াড সিপিইউ রয়েছে, সুতরাং আপনি যদি মাল্টিথ্রেডিং ব্যবহার করতে চান তবে 4 টির বেশি থ্রেড ব্যবহার করার কোনও অর্থ নেই।
- আপনি যদি চান যে আমি কোনও নির্দিষ্ট সংকলক পতাকা বা বাস্তবায়ন ব্যবহার করতে চাই, তবে ডকুমেন্টটি যা আপনার উত্তরে স্পষ্টভাবে উপস্থিত রয়েছে।
- ইনপুট পরিচালনা করতে আপনার কোডটি আপনার বিশেষ ক্ষেত্রে করা উচিত নয়
5
। - আপনি যে প্রতিটি উন্নতি পেয়েছেন তা আউটপুট দেওয়ার দরকার নেই। যেমন ইনপুট জন্য
2
আপনি কেবল পার্টিশনটি আউটপুট করতে পারেনn = 4
। তবে, যদি আপনি প্রথম 10 মিনিটের মধ্যে কিছু না আউটপুট করেন তবে আমি এটি হিসাবে স্কোর করবn = 0
।
n=59
, এবং কম দেয়া সংখ্যার সর্বাধিক সংখ্যা দ্বারা বাছাইnextN
দেয়n=64
। প্রত্যাখ্যানিত সংখ্যা তালিকার দৈর্ঘ্য অনুসারে বাছাই করা (যা পুনরাবৃত্তি হতে পারে) খুব দ্রুত একটি মার্জিতn=30
প্যাটার্নে নিয়ে যায়।