길이가 n인 연속된 숫자의 배열이 제공됩니다. 배열에는 두 번 이상 반복되는 하나의 숫자만 있습니다. 목표는 해당 요소가 배열에서 반복되는 횟수를 얻는 것입니다. 또는 배열에서 반복되는 요소의 길이를 찾을 수 있습니다.
i=0에서 i
예를 들어 이해합시다.
입력 - arr[]={ 0,1,2,3,3,3 }, N=6
출력 − 반복 요소의 개수 − 3
설명 − 3은 여기에서 세 번 반복됩니다.
입력 - arr[]={ 1,2,3,4,4,4,4,4,5,6 }, N=10
출력 − 반복 요소의 개수 − 5
설명 − 4는 여기에서 5번 반복됩니다.
아래 프로그램에서 사용된 접근 방식은 다음과 같습니다.
-
하나의 숫자가 반복되는 연속 숫자로 초기화된 정수 배열 arr[]를 사용합니다.
-
변수 len은 배열의 길이를 저장합니다.
-
findRepeat(int arr[],int n) 함수는 배열과 그 길이를 입력으로 받아 반복 요소 값과 반복 요소 길이를 표시합니다.
-
초기 카운트를 0으로 합니다.
-
인덱스 i=0에서 시작하여 i
-
루프가 끝나면 마지막 요소에 대해 1씩 증가합니다.
-
값으로 반복되는 요소를 표시합니다.
-
반복 횟수를 카운트로 표시합니다.
예
#include <bits/stdc++.h> using namespace std; void findRepeat(int arr[],int n){ int count=0; //count of repeated element int value=0; //to store repeated element for(int i=0;i<n;i++){ if(arr[i]==arr[i+1]){ count++; value=arr[i]; } } count++; //for last element cout<<"Repeated Element: "<<value; cout<<endl<<"Number of occurrences: "<<count; } int main(){ int Arr[]={ 2,3,4,5,5,5,6,7,8 }; int len=sizeof(Arr)/sizeof(Arr[0]); findRepeat(Arr,len); return 0; }
출력
위의 코드를 실행하면 다음과 같은 출력이 생성됩니다 -
Repeated Element: 5 Number of occurrences: 3