我有一個查詢,如何計算24a + 36b的funct(a,b)給出哪些在函數實現中執行a + b的幫助?
我已經實現了函數func(A,B),它返回A + B的結果,我現在要計算24A + 36B與調用的最小數量的功能
感謝響應
沒有可用的其他經營者或任何轉換器只是如果你想用36乘以用b在調用函數中添加24相乘,就可以直接做乘法本功能僅適用
我有一個查詢,如何計算24a + 36b的funct(a,b)給出哪些在函數實現中執行a + b的幫助?
我已經實現了函數func(A,B),它返回A + B的結果,我現在要計算24A + 36B與調用的最小數量的功能
感謝響應
沒有可用的其他經營者或任何轉換器只是如果你想用36乘以用b在調用函數中添加24相乘,就可以直接做乘法本功能僅適用
。所以你可以寫:
func(24*a, 36*b);
Bhai沒有其他運營商可用這是簡單的我知道 – user2315891
@ user2315891:是的,但你沒有在你的原始問題中指定。我不知道該怎麼想,除非有些不禮貌(或者你可能已經10歲了,那麼它是可以接受的)。細節確實完全改變了這個問題。 – Ped7g
// do the 12*(2*a + 3*b) as per Thomas Matthews comment
ab = func(a,b);
a2b2 = func(ab,ab);
a2b3 = func(a2b2,b);
k2_a2b3 = func(a2b3,a2b3);
k4_a2b3 = func(k2_a2b3,k2_a2b3);
k8_a2b3 = func(k4_a2b3,k4_a2b3);
r = func(k8_a2b3,k4_a2b3);
如果你不能存儲中間結果到其他變量,被取代的一個應該是相當接近最優,但由於某種原因,我不能確信,它是最佳然後。 (就像我不是100%肯定這是變量,只有99%的把握最佳的解決方案)
只是爲了好玩,取代一個,func
被稱爲59倍:
回報FUNC (func(func(func(func(a,b),func(a,b)),b),func(func(func(a,b),func(a,b)),b) ),func(func(func(a,b),func(a,b)),b),func(func(func(a,b),func(a,b)),b))) func(func(a,b),func(a,b)),b),func(func(func(a,b),func(a,b)),b)),func (func(func(a,b),func(a,b)),b),func(func(func(a,b),func(a,b)),b)))),func func(func(func(a,b),func(a,b)),b),func(func(func(a,b),func(a,b)),b)),func (func(fu nc(a,b),func(a,b)),b),func(func(func(a,b),func(a,b)),b))));
如果你不被允許創建新的變量,但你可以修改'a'和'b'的內容,答案*可以*用相同的7x'func'調用重寫(我將把它作爲練習,這很容易)。 – Ped7g
目前尚不清楚你想要什麼。但是:'func(24 * a,36 * b)'似乎解決了這個問題。 –
爲什麼你需要一個函數來添加兩個數字? 'result = 24 * a + 36 * b;' –
您可以簡化表達式:'12 *((2 * a)+(3 * b))'。 –