주어진 숫자를 만드는 데 필요한 최소 자릿수 찾기

사힐 다스

주어진 숫자를 만드는 데 필요한 최소 자릿수를 찾아야합니다. 예를 들어 : 14 => 95 (9 + 5 = 14)는 14를 형성하기위한 최소 인 두 자리입니다.

int moves(int n) {

    int m = 0;            // Minimum count

    while (n-9 >= 0) {    // To place maximum number of 9's
        n -= 9;
        m++;
    }

    if (n == 0) {         // If only nines made up the number
        return m;
    }

    else {
        m++;
        return m;
    }
}

온라인 심사 위원이 TLE (런타임 제한 초과)를 받고 있습니다. 개선 할 수있는 방법 또는 더 나은 접근 방법이 있습니까?

아지 우스

코드는 9가 해당 숫자에 몇 번이나 들어가는 지 살펴 보는 것으로 시작합니다. 이것은 더 쉽게 수행 할 수 있습니다.

int m = n/9;

나머지는 버려지는 정수 나눗셈을하기 때문에 이것으로 충분합니다. 경우에주의 n할 것 float또는 다른 부동 유형이 작동하지 않을 것입니다.

남은 질문은 9로 나눌 수 있는지 여부입니다. 그렇지 않은 경우 하나의 추가 숫자가 있습니다. 이것은 모듈로 연산자에 의해 수행 될 수 있습니다 (이해하기 쉽도록 장황하게 만들었습니다) :

bool divisible_by_nine = (n % 9 == 0);

모듈로 연산자를 모를 수 있다고 가정하면 정수 나눗셈의 나머지, 47/9 = 5 나머지 2이므로 47 % 9 = 2를 반환합니다.

그것 없이는 함께 갈 것입니다

int remainder = n - 9*m;
bool divisible = (remainder == 0);

결합 :

int required_digits(int number)
{
   bool divisible = (number % 9 == 0);
   return number/9 + (divisible ? 0 : 1);
}

또는 원하는 정도에 따라 한 줄로 표시합니다.

int required_digits(int number)
{
   return number/9 + (number % 9 == 0 ? 0 : 1);
}

루프가 없기 때문에 Θ (1)에 있으므로 필요한 시간 제한에서 작동합니다.

(기술적으로는 프로세서가 내부적으로 수행 한 것처럼 분할을 처리하는 것이 좋지만 매우 효율적입니다. 절대적으로 정확하려면 "분할이 일정한 시간 작업이라고 가정"을 추가해야합니다.)

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

주어진 숫자의 합계를 구하는 요소 찾기

분류에서Dev

주어진 숫자의 합인 배열 요소를 찾는 방법

분류에서Dev

드라이브 문자를 숨기는 데 필요한 16 진수 값은 어떻게 찾습니까?

분류에서Dev

자바 스크립트에서 내림차순으로 숫자 배열을 정렬하는 데 필요한 최소 스왑 수를 찾는 방법

분류에서Dev

주어진 소수 자릿수로 숫자를 표시하는 방법

분류에서Dev

주어진 숫자 목록에서 최대 나눌 수있는 정도 찾기

분류에서Dev

정확한 주어진 숫자를 다른 순서로 포함하는 숫자를 찾기 위해 정규식을 만드는 방법은 무엇입니까?

분류에서Dev

증가하도록 주어진 배열을 수정하는 데 필요한 최소 회전 수

분류에서Dev

주어진 숫자의 제수이고 그 합이 최소 인 세 개의 숫자를 찾습니다.

분류에서Dev

주어진 숫자 N은 가능한 최대 숫자를 얻기 위해 K 자리를 제거합니다.

분류에서Dev

주어진 숫자를 더하는 배열의 숫자 찾기 c ++

분류에서Dev

주어진 숫자의 자릿수를 세는 방법?

분류에서Dev

RDD에서 주어진 술어를 만족하는 첫 번째 요소 찾기

분류에서Dev

완벽한 숫자를 찾는 프로그램 : 출력 오류. 완전 수는 인자의 합이 주어진 숫자와 같은 숫자입니다.

분류에서Dev

JQuery-주어진 수의 형제가있는 요소 찾기

분류에서Dev

A를 B로 변환하는 데 필요한 최소 단계 수

분류에서Dev

주어진 숫자로 합계를 만드는 목록에서 숫자 쌍을 찾는 방법

분류에서Dev

주어진 요소를 따르는 인스턴스 찾기

분류에서Dev

주어진 모든 문자열을 포함하는 최소 길이 부분 문자열 찾기

분류에서Dev

이 사용자 지정 함수를 실행하는 데 필요한 코드를 최소화하려면 어떻게해야합니까?

분류에서Dev

이 사용자 지정 함수를 실행하는 데 필요한 코드를 최소화하려면 어떻게해야합니까?

분류에서Dev

기사가 주어진 공간으로 이동하는 데 필요한 최대 이동량

분류에서Dev

남자에게 필요한 최소 금액 찾기

분류에서Dev

이 회의를 진행하는 데 필요한 최소 일수는 얼마입니까?

분류에서Dev

주어진 값 n까지 소수를 찾는 최적화 된 방법

분류에서Dev

r의 데이터 프레임에서 숫자 wrt a 요소의 최대 및 최소를 어떻게 찾습니까?

분류에서Dev

주어진 한계보다 크지 않은 크기를 가진 최대 가중치를 가진 노드 찾기

분류에서Dev

숫자가 음수이면 주어진 시퀀스에서 최대 하위 시퀀스를 찾기위한 재귀 솔루션의 기본 케이스가 0을 반환하는 이유는 무엇입니까?

분류에서Dev

최소 거리의 위치를 찾는 데 필요한 계산 비용 절감

Related 관련 기사

  1. 1

    주어진 숫자의 합계를 구하는 요소 찾기

  2. 2

    주어진 숫자의 합인 배열 요소를 찾는 방법

  3. 3

    드라이브 문자를 숨기는 데 필요한 16 진수 값은 어떻게 찾습니까?

  4. 4

    자바 스크립트에서 내림차순으로 숫자 배열을 정렬하는 데 필요한 최소 스왑 수를 찾는 방법

  5. 5

    주어진 소수 자릿수로 숫자를 표시하는 방법

  6. 6

    주어진 숫자 목록에서 최대 나눌 수있는 정도 찾기

  7. 7

    정확한 주어진 숫자를 다른 순서로 포함하는 숫자를 찾기 위해 정규식을 만드는 방법은 무엇입니까?

  8. 8

    증가하도록 주어진 배열을 수정하는 데 필요한 최소 회전 수

  9. 9

    주어진 숫자의 제수이고 그 합이 최소 인 세 개의 숫자를 찾습니다.

  10. 10

    주어진 숫자 N은 가능한 최대 숫자를 얻기 위해 K 자리를 제거합니다.

  11. 11

    주어진 숫자를 더하는 배열의 숫자 찾기 c ++

  12. 12

    주어진 숫자의 자릿수를 세는 방법?

  13. 13

    RDD에서 주어진 술어를 만족하는 첫 번째 요소 찾기

  14. 14

    완벽한 숫자를 찾는 프로그램 : 출력 오류. 완전 수는 인자의 합이 주어진 숫자와 같은 숫자입니다.

  15. 15

    JQuery-주어진 수의 형제가있는 요소 찾기

  16. 16

    A를 B로 변환하는 데 필요한 최소 단계 수

  17. 17

    주어진 숫자로 합계를 만드는 목록에서 숫자 쌍을 찾는 방법

  18. 18

    주어진 요소를 따르는 인스턴스 찾기

  19. 19

    주어진 모든 문자열을 포함하는 최소 길이 부분 문자열 찾기

  20. 20

    이 사용자 지정 함수를 실행하는 데 필요한 코드를 최소화하려면 어떻게해야합니까?

  21. 21

    이 사용자 지정 함수를 실행하는 데 필요한 코드를 최소화하려면 어떻게해야합니까?

  22. 22

    기사가 주어진 공간으로 이동하는 데 필요한 최대 이동량

  23. 23

    남자에게 필요한 최소 금액 찾기

  24. 24

    이 회의를 진행하는 데 필요한 최소 일수는 얼마입니까?

  25. 25

    주어진 값 n까지 소수를 찾는 최적화 된 방법

  26. 26

    r의 데이터 프레임에서 숫자 wrt a 요소의 최대 및 최소를 어떻게 찾습니까?

  27. 27

    주어진 한계보다 크지 않은 크기를 가진 최대 가중치를 가진 노드 찾기

  28. 28

    숫자가 음수이면 주어진 시퀀스에서 최대 하위 시퀀스를 찾기위한 재귀 솔루션의 기본 케이스가 0을 반환하는 이유는 무엇입니까?

  29. 29

    최소 거리의 위치를 찾는 데 필요한 계산 비용 절감

뜨겁다태그

보관