Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript에서 동일한 자릿수 합을 가진 가장 큰 요소가 있는 그룹 찾기

<시간/>

유일한 인수로 n과 같은 양의 정수를 취하는 JavaScript 함수를 작성해야 합니다.

함수는 먼저 1에서 n까지의 정수를 특정 하위 배열이 특정 숫자 합계를 포함하는 모든 요소를 ​​포함하는 하위 배열로 그룹화해야 합니다. 그런 다음 함수는 각 하위 배열을 검사하고 가장 많은 요소를 포함하는 하위 배열의 길이를 반환해야 합니다.

예를 들어 -

입력 번호가 -

인 경우
상수 번호 =15;

그러면 출력은 다음과 같아야 합니다. -

상수 출력 =2;

그룹이 -

이기 때문에 <미리>[1, 10], [2, 11], [3, 12], [4, 13], [5, 14], [6, 15], [7], [8], [9]

예시

다음은 코드입니다 -

 const num =67; const countLargestGroup =(num =1) => { if(num <10){ return num; }; 하자 =0; 온도 =0으로 두십시오. 지도 ={} 하자; for(let i =1; i <=num; i++){ 합계 =0; num =나; 동안 (숫자) { 합계 +=숫자 % 10; 숫자 =Math.floor(숫자 / 10); } if(지도[합] !=정의되지 않음){ 지도[합]++; } else { 지도[합계] =1; } }; for (Object.keys(map)의 const 키) { if(temp ==map[key]){ res++; } else if(temp <지도[키]){ res =1; 임시 =지도[키]; } }; 반환 res;};console.log(countLargestGroup(num));

출력

다음은 콘솔 출력입니다 -

4