পূর্ণসংখ্যা একটি প্রদত্ত , আপনি বিট যে প্রয়োজন বিপর্যস্ত করা ন্যূনতম সংখ্যা খুঁজে বের করতে হবে এটি একটি পরিণত বর্গ সংখ্যা । আপনি কেবলমাত্র সবচেয়ে তাত্পর্যপূর্ণ নীচে বিটগুলি উল্টাতে পারবেন ।
উদাহরণ
- ইতিমধ্যে একটি বর্গ সংখ্যা ( ), সুতরাং প্রত্যাশিত আউটপুট ।
- বিট: ( ) বর্গক্ষেত্রে পরিণত করা যেতে পারে , সুতরাং প্রত্যাশিত আউটপুট ।
- একক বিট উল্টিয়ে স্কোয়ার সংখ্যায় রূপান্তর করা যায় না (সম্ভাব্য ফলাফল , , এবং ) তবে এটি 2 বিট উল্টিয়ে করা যেতে পারে: ( ), সুতরাং প্রত্যাশিত আউটপুট ।
বিধি
- যদি আপনার কোডটি খুব ধীর হয় বা বড় টেস্ট-কেসগুলির জন্য ত্রুটি ছুড়ে দেয় তবে এটি ঠিক আছে তবে এটি কমপক্ষে 1 মিনিটেরও কম সময়ে সমর্থন করবে ।
- এটি কোড-গল্ফ !
পরীক্ষার মামলা
Input | Output
----------+--------
4 | 0
22 | 2
24 | 1
30 | 3
94 | 4
831 | 5
832 | 1
1055 | 4
6495 | 6
9999 | 4
40063 | 6
247614 | 7 (smallest N for which the answer is 7)
1049310 | 7 (clear them all!)
7361278 | 8 (smallest N for which the answer is 8)
100048606 | 8 (a bigger "8")
অথবা অনুলিপি / কাস্টম বান্ধব বিন্যাসে:
[4,22,24,30,94,831,832,1055,6495,9999,40063,247614,1049310,7361278,100048606]
100048606
টিআইও-তে কার্যকর হয় না , এটি কি সমস্যা?