每次新增後,如何向A新增N位數字使其能被B整除?
給定a、b和n。我們必須考慮以下條件,並找到最佳解決方案,向a新增n位數字,以便在每次迭代後它都能被b整除。
以某種方式向**a**新增一位數字,使得新增後**a**能被**b**整除。
列印經過n次步驟1迭代後**a**的最小可能值。
如果操作失敗,則列印**失敗**。
檢查每次新增數字後的整除性。
輸入
a=5 b=4 n=4
輸出
52000
解釋
從**0**到**9**新增第一位數字,如果沒有任何數字使**a**能被**b**整除,則答案為**-1**,這意味著如果在**a**中添加了**n**位數字,**a**永遠不會被**b**整除。否則,新增滿足條件的第一位數字,然後在其後新增**0** (n-1)次,因為如果**a**能被**b**整除,則**a*10**、**a*100**……也能被**b**整除。
示例
#include <iostream>
using namespace std;
int main() {
int a = 5, b = 4, n = 4;
int num = a;
for (int i = 0; i <= 9; i++) {
int temp = a * 10 + i;
if (temp % b == 0) {
a = temp;
break;
}
}
if (num == a) {
a = -1;
}
for (int j = 0; j < n - 1; j++) {
a *= 10;
}
if(a>-1) {
cout <<a;
} else {
cout <<”fail”;
}
return 0;
}
廣告
資料結構
網路
關係型資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP