সংক্ষিপ্ত বিবরণ
এই প্রোগ্রামটি একটি অ্যারেতে L থেকে R إندেক্স পর্যন্ত উপাদানগুলোর গুণফল বের করে এবং তারপর সেটিকে একটি প্রাইম সংখ্যা P দিয়ে মডুলো অপারেশন করে ফলাফল দেয়।
অ্যালগরিদম
- L এবং R কে ০-ভিত্তিক ইন্ডেক্সে রূপান্তর করুন (L−1, R−1)
- ans = 1 দিয়ে আরম্ভ করুন
- i = L থেকে R পর্যন্ত লুপ চালান:
- ans = (ans × A[i]) % P
- ans রিটার্ন করুন
উদাহরণ
Input: A[]={1,2,3,4,5,6}, L=2, R=6, P=29 → Output: 24
Input: A[]={1,2,3,4,5,6}, L=2, R=5, P=113 → Output: 7
সি কোড
#include <stdio.h>
int calculateProduct(int A[], int L, int R, int P) {
L--; R--; // 0-based index
int ans = 1;
for (int i = L; i <= R; i++) {
ans = ans * A[i];
ans = ans % P;
}
return ans;
}
int main() {
int A[] = {1,2,3,4,5,6};
int P = 29, L = 2, R = 6;
printf("%d\n", calculateProduct(A, L, R, P));
return 0;
}
আউটপুট
24