বলুন আমার একটি অভিব্যক্তি আছে:
9 * 8 + 1 - 4
অপারেটরের অগ্রাধিকারের উপর নির্ভর করে এই অভিব্যক্তিটি ছয়টি বিভিন্ন উপায়ে ব্যাখ্যা করা যায়:
(((9 * 8) + 1) - 4) = 69 (* + -)
((9 * 8) + (1 - 4)) = 69 (* - +)
((9 * (8 + 1)) - 4) = 77 (+ * -)
(9 * ((8 + 1) - 4)) = 45 (+ - *)
((9 * 8) + (1 - 4)) = 69 (- * +)
(9 * (8 + (1 - 4))) = 45 (- + *)
বলুন আমি একজন বিকাশকারী এবং আমার কাছে অগ্রাধিকারের সারণী ইত্যাদি মুখস্থ করার মতো মনে হয় না, তাই আমি কেবল অনুমান করতে চলেছি।
এই ক্ষেত্রে, ত্রুটির বৃহত্তম মার্জিন 45-77 হবে, যা 32 এর পার্থক্য This এর অর্থ হ'ল আমার অনুমান কেবলমাত্র সর্বোচ্চ 32 দ্বারা বন্ধ হয়ে যাবে।
চ্যালেঞ্জ
সংখ্যা এবং এর মধ্যে রয়েছে একটি অভিব্যক্তি দেওয়া +
, -
, *
, /
(পূর্ণসংখ্যা বিভাগ) এবং %
, আউটপুট প্রকাশের জন্য বৃহত্তম ও ক্ষুদ্রতম সম্ভব মান পরম পার্থক্য, অপারেটরদের প্রাধান্য উপর ভিত্তি করে।
বিশেষ উল্লেখ
- ইনপুট এক্সপ্রেশনটিতে প্রথম বন্ধনী থাকবে না এবং প্রতিটি অপারেটর বাম-সাহসী হয়।
- ইনপুট এক্সপ্রেশনটিতে কেবল নন-নেগেটিভ পূর্ণসংখ্যা থাকবে। তবে subexpressions নেতিবাচক (উদাঃ
1 - 4
) মূল্যায়ন করতে পারে । - আপনি যে কোনও যুক্তিসঙ্গত বিন্যাসে অভিব্যক্তিটি নিতে পারেন। উদাহরণ স্বরূপ:
"9 * 8 + 1 - 4"
"9*8+1-4"
[9, "*", 8, "+", 1, "-", 4]
[9, 8, 1, 4], ["*", "+", "-"]
- ইনপুটটিতে কমপক্ষে 1 জন এবং কমপক্ষে 10 জন অপারেটর থাকবে।
- যে কোনও এক্সপ্রেশন যা 0 দ্বারা একটি বিভাজন বা মডুলো ধারণ করে তা উপেক্ষা করা উচিত।
- আপনি ধরে নিতে পারেন যে মডুলোগুলিকে নেতিবাচক অপারেশন দেওয়া হবে না।
পরীক্ষার মামলা
9 * 8 + 1 - 4 32
1 + 3 * 4 3
1 + 1 0
8 - 6 + 1 * 0 8
60 / 8 % 8 * 6 % 4 * 5 63
%
অপারেটর নেতিবাচক সংখ্যায় কিভাবে কাজ করে? সি বা পাইথনের মতো পথ বা অন্য কিছু?
%
নিজের দ্বিতীয় উদাহরণে দুটি পৃথক নজির হিসাবে আচরণ করছেন ।