এর প্রক্রিয়াটি বিবেচনা করুন:
একটি অ-নেতিবাচক পূর্ণসংখ্যক এন নেওয়া
যেমন27
।এটি পূর্ণসংখ্যায় বিভক্ত করা
N - floor(N/2)
এবংfloor(N/2)
(একটি 'বৃহত্তর' এবং 'ছোট' অর্ধেক) এবং সেগুলিতে সেগুলি লিখছি।
যেমন27
হয়ে যায়14 13
।পূর্ণসংখ্যাকে একটি নতুন, আরও বড় পূর্ণসংখ্যার সাথে যুক্ত করার জন্য স্থানটি সরিয়ে ফেলা হচ্ছে।
যেমন14 13
হয়ে যায়1413
।2 এবং 3 পদক্ষেপ পুনরাবৃত্তি করা হয়েছে কিছু পছন্দসই সংখ্যা number
যেমন1413
→707 706
→707706
→353853 353853
→353853353853
→ ...
এই চ্যালেঞ্জটি হুবহু এটি করা সম্পর্কে, তবে সবসময় বেস 10 এ নয়।
চ্যালেঞ্জ
একটি প্রোগ্রাম লিখুন যা বি, এন, এবং এস তিনটি সংখ্যায় নেবে:
বি 2 থেকে 10 এর পূর্ণসংখ্যা যা N এর বেস (বাইনারি থেকে দশমিক)।
এন বিভাজন-পুনরায় যোগদান প্রক্রিয়া প্রয়োগ করার জন্য অ-নেতিবাচক পূর্ণসংখ্যা ger ব্যবহারকারীর ইনপুটটিকে আরও সহজ করার জন্য, এটি বেস বিতে স্ট্রিং হিসাবে দেওয়া হয় , পূর্ণসংখ্যা নয়।
এস হ'ল একটি অ-নেতিবাচক পূর্ণসংখ্যা যা বিভাজন-পুনরায় যোগদান প্রক্রিয়াটির পুনরাবৃত্তি করার সংখ্যা is
প্রোগ্রামটির আউটপুট হ'ল এস বিভক্ত-যোগ প্রক্রিয়াগুলির পরে বেস বিতে N এর স্ট্রিং প্রতিনিধিত্ব।
এস যখন হয় 0
, কোনও বিভাজন হয় না, সুতরাং আউটপুট সর্বদা এন হয়
যখন এন থাকে 0
, সমস্ত বিভাজনের ফর্ম থাকে 0 0
এবং 0
আবার হ্রাস পায় , তাই আউটপুট সর্বদা থাকে0
।
উদাহরণ
B = 10, N = 27, S = 1
→1413
B = 10, N = 27, S = 2
→707706
B = 9, N = 27, S = 1
→1413
B = 9, N = 27, S = 2
→652651
B = anything, N = anything, S = 0
→N
B = anything, N = 0, S = anything
→0
N = 1
for S = 0
থেকে সমস্ত বি এর সারণী 7
:
B S=0 S=1 S=2 S=3 S=4 S=5 S=6 S=7
2 1 10 11 101 1110 111111 10000011111 10000100001000001111
3 1 10 21 1110 202201 101101101100 1201201201212012012011 212100212102121002121212100212102121002120
4 1 10 22 1111 223222 111311111311 2232222232322322222322 11131111131311311111311113111113131131111131
5 1 10 32 1413 432431 213441213440 104220331443104220331442 2433241322130211014044424332413221302110140443
6 1 10 33 1514 535535 245550245545 122553122553122553122552 4125434125434125434125441254341254341254341254
7 1 10 43 2221 11111110 40404044040403 2020202202020220202022020201 10101011010101101010110101011010101101010110101011010100
8 1 10 44 2222 11111111 44444454444444 2222222622222222222226222222 11111113111111111111131111111111111311111111111113111111
9 1 10 54 2726 13581357 62851746285173 3142536758708231425367587081 15212633743485606571782880411521263374348560657178288040
10 1 10 55 2827 14141413 70707077070706 3535353853535335353538535353 17676769267676676767692676771767676926767667676769267676
S = 0
to 3
: এলোমেলো এন সহ সমস্ত বি এর সারণী
B S=0 S=1 S=2 S=3
2 11011 11101101 11101111110110 11101111110111110111111011
3 2210 11021101 20102012010200 1001212100121210012121001211
4 1113 230223 112112112111 2302302302323023023022
5 101 2323 11341134 31430423143042
6 120 4040 20202020 1010101010101010
7 134 5252 24612461 1230456412304564
8 22 1111 445444 222622222622
9 4 22 1111 505505
10 92 4646 23232323 1161616211616161
বিস্তারিত
- স্টিডিন বা কমান্ড লাইনের মাধ্যমে ইনপুট নিন। Stdout যাও আউটপুট।
- কোনও প্রোগ্রামের পরিবর্তে, আপনি এমন একটি ফাংশন লিখতে পারেন যা বি, এন এবং এস গ্রহণ করে এবং ফলাফলটি সাধারণত মুদ্রণ করে বা এটি ফেরত দেয় (স্ট্রিং হিসাবে)।
- বি, এন এবং এস যে কোনও ক্রমে নেওয়া যেতে পারে।
- সমস্ত ইনপুট যা আউটপুট উত্পাদন করে যার দশমিক মান 2 32 এর নীচে কাজ করা উচিত।
- এন স্বাভাবিক উপায়ে প্রতিনিধিত্ব করা হয়। অর্থাত সবচেয়ে গুরুত্বপূর্ণ অঙ্ক প্রথম এবং শূন্য নিজেই যা লেখা আছে ব্যতীত কোন বসানো শূন্যগুলি
0
। (এর00
পরিবর্তে আউটপুটিং0
অবৈধ)) - বাইটের মধ্যে সংক্ষিপ্ততম কোডটি জয়ী।
Iff তুমি আমার চ্যালেঞ্জ ভোগ, দেওয়ার কথা বিবেচনা ব্লক বিল্ডিং বট ঝাঁকে ঝাঁকে! কিছু ভালোবাসা :)