東東在玩遊戲「game23」。在一開始他有乙個數字n,他的目標是把它轉換成m,在每一步操作中,他可以將n乘以2或乘以3,他可以進行任意次操作。輸出將n轉換成m的操作次數,如果轉換不了輸出-1。
input
輸入的唯一一行包括兩個整數n和m(1<=n<=m<=5*10^8).
output
輸出從n轉換到m的操作次數,否則輸出-1.
****** input 1在這個題目中,如果m不能整除n則說明不論將n乘2或乘3多少次都無法轉化為m,所以直接輸出-1。否則將m除以n,然後不斷滴對3和2求餘,每次求餘ans++,最後如果m 不等於1的話還是無法轉化。120 51840
****** output 1
7****** input 2
42 42
****** output 2
0****** input 3
48 72
****** output 3
-1
#include
using
namespace std;
#define _for(i,a,b) for(int i = (a); i < (b); i++)
#define _rep(i,a,b) for(int i = (a); i <= (b); i++)
int n,m,ans;
intmain()
m /= n;
while
(m%3==0
)while
(m%2==0
)if(m !=1)
ans =-1
; cout << ans << endl;
}
簽到題 Week10作業A題
東東在玩遊戲 game23 在一開始他有乙個數字n,他的目標是把它轉換成m,在每一步操作中,他可以將n乘以2或乘以3,他可以進行任意次操作。輸出將n轉換成m的操作次數,如果轉換不了輸出 1。輸入 輸入的唯一一行包括兩個整數n和m 1 n m 5 10 8 輸出 輸出從n轉換到m的操作次數,否則輸出 ...
week10 作業A 簽到題
東東在玩遊戲 game23 在一開始他有乙個數字n,他的目標是把它轉換成m,在每一步操作中,他可以將n乘以2或乘以3,他可以進行任意次操作。輸出將n轉換成m的操作次數,如果轉換不了輸出 1。input 輸入的唯一一行包括兩個整數n和m 1 n m 5 10 8 output 輸出從n轉換到m的操作次...
WEEK10 作業 A 簽到題
東東在玩遊戲 game23 在一開始他有乙個數字n,他的目標是把它轉換成m,在每一步操作中,他可以將n乘以2或乘以3,他可以進行任意次操作。輸出將n轉換成m的操作次數,如果轉換不了輸出 1。輸入的唯一一行包括兩個整數n和m 1 n m 5 10 8 輸出從n轉換到m的操作次數,否則輸出 1.120 ...