কনসেপ্ট
দুটি অ্যারে a[] ও b[] দেওয়া আছে। C[i] = d*a[i] + b[i] (d যেকোনো রিয়েল নম্বর)। এমন d খুঁজে বের করুন যাতে C-এ সর্বোচ্চ সংখ্যক শূন্য থাকে। শূন্যের সংখ্যাও প্রিন্ট করুন।
ইনপুট
a[] = {15, 40, 45} b[] = {4, 5, 6}
আউটপুট
Value of d is: -0.133333 The number of zeros in array C is: 1
পদ্ধতি
- সমীকরণ: d = -b[i]/a[i]
- হ্যাশ টেবিল (unordered_map) দিয়ে প্রতিটি d-এর ফ্রিকোয়েন্সি গণনা করুন।
- সর্বোচ্চ ফ্রিকোয়েন্সি + (a[i]=0 এবং b[i]=0 হয় এমন জোড়ার সংখ্যা) = সর্বোচ্চ শূন্য।
উদাহরণ (C++ কোড)
// C++: d নির্ণয় করে সর্বোচ্চ শূন্য
#include <bits/stdc++.h>
using namespace std;
void findDandZeros1(int a[], int b[], int m) {
unordered_map mpp1;
int count1 = 0;
for (int i=0; i
আউটপুট
Value of d is: -0.133333 The number of zeros in array C is: 1