Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++ 펜타토프 수

<시간/>

펜타토프 수는 파스칼의 삼각형에서 다섯 번째 숫자로 설명됩니다. 이제 알다시피, 그것은 다섯 번째 숫자이므로 파스칼의 삼각형에 최소한 다섯 개의 숫자가 있어야 함을 의미하므로 이 시리즈의 첫 번째 숫자는 1 4 6 4 1에서 시작합니다. 파스칼 삼각형의 네 번째 행. 따라서 이 주어진 튜토리얼에서 n번째 펜타토프 번호를 찾아야 합니다. 예를 들면

Input : 1

Output : 1

Input : 4

Output : 35

다음 다이어그램에서 출력을 확인할 수 있습니다 -

C++ 펜타토프 수

이제 이 문제는 시리즈의 한 유형이므로 솔루션에서 이 시리즈의 패턴을 찾으려고 합니다.

해결책을 찾기 위한 접근 방식

이 프로그램에서 우리는 모든 숫자가 뒤따르는 이 급수에 대한 일반 공식을 찾을 것입니다. 그런 다음 값을 공식에 ​​입력해야 출력을 얻을 수 있습니다.

예시

위 접근 방식에 대한 C++ 코드

#include<bits/stdc++.h>
using namespace std;
int answer(int n){ // function to find the value of nth pentatope number
    return (n * (n+1) * (n+2) * (n+3))/ 24; // the formula that we derived
}
int main(){
    int n = 6; // the pentatope number that we need to find
    cout << answer(n) << "\n";
    n = 4;
    cout << answer(n) << "\n";
    return 0;
}

출력

126
35

위 코드의 전체 복잡성은 O(1)입니다. 이는 일정한 복잡성에서 작동한다는 것을 의미하며, 이는 모든 입력에 대해 동시에 응답을 계산할 수 있도록 시간이 입력 크기에 의존하지 않기 때문에 달성할 수 있는 최고의 시간 복잡성입니다.

강령 이해

위의 접근 방식에서는 아시다시피 시리즈의 패턴을 찾고 그 패턴에서 일반 공식을 고안하려고 했습니다. 이제 우리가 생각해낸 공식은 (n * (n + 1) * (n + 2) * (n + 3)) / 24입니다. 여기서 n은 찾아야 하는 항입니다.

결론

이 튜토리얼에서는 공식을 고안하여 N번째 오각형 수를 찾는 문제를 해결합니다. 우리는 또한 이 문제에 대한 C++ 프로그램과 우리가 해결한 완전한 접근 방식을 배웠습니다. C, Java, python 및 기타 언어와 같은 다른 언어로 동일한 프로그램을 작성할 수 있습니다. 이 튜토리얼이 도움이 되기를 바랍니다.