इस समस्या में, हमें एक संख्या N दी गई है। हमारा कार्य C++ में श्रृंखला 0, 0, 2, 1, 4, 2, 6, 3, 8... का N-वां पद ढूंढने के लिए एक प्रोग्राम बनाना है।
समस्या विवरण
दी गई श्रृंखला के Nवें पद को ढूंढना:
0, 0, 2, 1, 4, 2, 6, 3, 8 .... N पद
हम श्रृंखला के सामान्य पद को ढूंढेंगे।
उदाहरण
इनपुट N = 8
आउटपुट 3
हल का दृष्टिकोण
श्रृंखला के सामान्य पद को ढूंढने के लिए, हमें श्रृंखला को बारीकी से देखना होगा। यह श्रृंखला पहचानने में थोड़ी कठिन है क्योंकि यह दो श्रृंखलाओं का मिश्रण है। एक श्रृंखला सम स्थानों पर और एक श्रृंखला विषम स्थानों पर।
विषम श्रृंखला: 0, 2, 4, 6, 8, 10, 12,....
सम श्रृंखला: 0, 1, 2, 3, 4, 5, 6,....
यहां,
यदि श्रृंखला का nवां पद है:
विषम, तो मान (n-1) है।
सम, तो मान T(n-1)/2 है।
उदाहरण
#include <iostream>
using namespace std;
int findNTerm(int N) {
if (N % 2 == 0)
return findNTerm(N-1)/2;
else {
return (N-1);
}
}
int main(){
int N = 13;
cout << N << "th term of the series is " << findNTerm(N) << endl;
}
आउटपुट
13th term of the series is 12