길이가 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