Week10 Game23 分解質因數

2021-10-05 18:33:15 字數 954 閱讀 1491

題目描述

給出兩個數字n和m,目的是將n轉變成m。n有兩種操作:乘以2或者乘以3,運算元量不限,輸出將n轉換成m的操作次數,如果轉換不了輸出-1。

輸入格式

輸入的唯一一行包括兩個整數n和m(1<=n<=m<=5*10^8).

輸出格式

輸出從n轉換到m的操作次數,否則輸出-1.

輸入輸出案例

****** input 1

120 51840

****** output 1

7

****** input 2

42 42

****** output 2

0

****** input 3

48 72

****** output 3

-1

解題思路

首先判斷目標m與初始值n的關係:如果m都不能被n整除,那直接-1就可。

如果能夠被n整除:獲取div=m/n,對於這個div:

給出**:

#include

#include

using

namespace std;

intmain()

if(m == n)

int counter =0;

int div = m / n;

while(!

(div %2)

)while(!

(div %3)

)if(div !=1)

cout << counter << endl;

return0;

}

14分解質因式

問題 將乙個整數分解質因數。例如 輸入90,列印出90 233 5 target int input 輸入乙個整數 print target,end if target 0 abs x 返回x的絕對值 target abs target print 1 end flag 0if target 1 p...

hdu 5428 分解質因子

題意 給你n個數,讓你求出這n個數最小的因子之積,但要滿足乙個條件,那就是這個乘積必須包含三個因子,可以為本身 解題思路 對於每乙個數字,它有用的部分其實只有它的所有質因子 包括相等的 求出所有數的所有質因子中最小的兩個,相乘就是答案。如果所有數字的質因子個數不到兩個,那麼就是無解。時間複雜度o n...

ZZULIOJ 1071 分解質因子

題目描述 將乙個正整數分解質因數,例如,輸入90,輸出2 3 3 5。輸入 輸入乙個正整數n 2 n 2000 輸出 從小到大輸出n的所有質因子,每兩個數之間空一格。樣例輸入 20樣例輸出 2 25其實題目要求的最後乙個不能空格可以忽視,因為判題平台會自動把最後空格忽視掉,不過還是不要忽視,要學會如...