Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

X로 나눌 수 있는 가장 작은 K 자리 숫자에 대한 C++ 프로그래밍?


X로 나눌 수 있는 가장 작은 K 자리 숫자는 X로 나눌 수 있음을 확인하여 공식을 사용하여 찾습니다. 공식은 다음과 같은 방식으로 작동합니다. -

최소 K 자리 수[min]를 계산합니다(예:10/100/1000 등).

이제 min이 X로 나누어 떨어지는지 확인하십시오. 그렇다면 이것이 답입니다.

그렇지 않은 경우 min+X - ([min+X]%k)가 답입니다.

예시

#include <iostream>
#include <math.h>
using namespace std;
int main() {
   int X = 83;
   int K = 5;
   cout<<"The smallest "<<K<<" digit number divisible by "<<X<<" is ";
   int MIN = pow(10, K - 1);
   if (MIN % X == 0)
      cout<<MIN;
   cout<<((MIN + X) - ((MIN + X) % X));
   cout << answer(X, K);
}

출력

The smallest 5 digit number divisible by 83 is 100430