당신이 사교 모임에 참석하고 있다고 가정해 보세요. 악수를 한 번만 하면 악수를 몇 번이나 할 수 있는지 계산할 수 있나요? 이 질문은 당신에게 흥미로울 수 있습니다. 이 문제는 순열과 조합의 수학적 방법을 사용하여 해결할 수 있습니다. 그러나 수학 연산에는 시간이 많이 걸릴 수 있습니다.
이 기사에서는 C++를 사용하여 이 문제를 해결하는 방법에 대해 설명합니다. 수학 공식, 재귀 및 기타 조합 기술을 포함한 다양한 접근 방식을 살펴보겠습니다.
모임에 N명의 사람들이 있다고 가정해 보겠습니다. 한 사람이 한 번만 악수할 수 있도록 가능한 악수 횟수를 계산하려고 합니다.
으아아아N명이 모인 곳에서 악수한 횟수를 구하는 공식은 −
으아아아N명의 각 사람은 (N-1)명의 개인(본인 제외)과 악수를 하게 되며, 두 개인 간의 악수는 두 번 계산되지 않습니다.
예를 들어 인원이 14명이라면 악수 횟수는
으아아아아래 예에서는 공식을 사용하여 악수 횟수를 계산하고 있습니다. 여기서는 간단히 수학 연산자를 사용하여 파티에 참석한 사람의 수를 입력합니다.
으아아아여기에서는 1부터 'N-1'까지 반복하고 모든 값을 더하여 악수 횟수를 계산합니다.
재귀를 사용하여 악수 횟수를 계산할 수 있습니다. 이렇게 하면 한 번에 한 사람씩 고려하여 문제를 더 작은 문제로 나눌 수 있습니다.
여기에서는 감소하는 카운터가 있는 while 루프를 사용하여 악수 횟수를 계산했습니다. 루프는 총 사람 수로 시작한 다음 각 반복 후에 카운터를 하나씩 감소시킵니다.
여기에서는 계산을 위해 동적 프로그래밍을 사용했습니다.
dp' 벡터를 초기화하세요.
참고 − 이 방법은 중복 계산을 방지하는 데 도움이 됩니다. 여기서는 이전에 계산된 값을 "dp" 벡터에 저장합니다. 이 값은 언제든지 액세스하고 재사용할 수 있습니다. 이는 알고리즘을 효율적으로 만들고 전체 계산 시간을 줄입니다.
결론위 내용은 악수 횟수, 각 사람은 한 번만 악수합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!