擦除n個數字例如,對於數9511145
後的最大數量,如果我想從這個數字的最大數目將是9545
刪除3個位數。刪除的數字不必是連續的。但其餘數字的相對位置應保持不變。數字長度可以是10位。爲了在迭代方法中解決這個問題,可能需要O(N )時間。如果任何人可以提出任何更好的方法來解決這個問題,那麼這將是一個很大的幫助。如何從數量
Q
如何從數量
-5
A
回答
0
解決這個問題已經回答了精美here。 唯一的區別是你必須保持堆棧的順序遞減。
# process digits from left to right
for each digit from left to right
if digit <= top of the stack
push(digit)
continue
while (digit > top of the stack) and (we have enough digits to reach n-k digits)
pop()
push(digit)
pop extra digits
9511145
push(9) => 9
push(5) because 5 <= 9 => 95
push(1) because 1 <= 5 => 951
push(1) because 1 <= 1 => 9511
push(1) because 1 <= 1 => 95111
pop() because 4 > 1 and we can still end up with 4 digits => 9511
pop() because 4 > 1 and we can still end up with 4 digits => 951
pop() because 4 > 1 and we can still end up with 4 digits => 95
push(4) because 4 <= 5 => 954
push(5) because we need to have 4 digits at least => 9545
注意:upvote original answer。
+0
第二個最後的原因(4 <5)似乎是錯誤的。因爲即使你有6個而不是4個,你仍然需要追加最後兩個數字來使長度爲4位的數字。 –
+0
謝謝哥哥。@ sudonakeinstall2 –
+0
真棒解釋。但我的名譽不允許我投了你的解決方案。它是我的運氣不好..感謝 –
相關問題
- 1. 如何從數字矢量
- 2. 擊:如何從數量
- 3. 如何從main()訪問函數變量
- 4. 如何從db獲取評論數量?
- 5. 如何從stocktwits獲得股票數量
- 6. 如何從函數jquery獲取變量
- 7. 如何從XML變量讀取數據?
- 8. 如何從jQuery函數返回變量
- 9. 如何從函數訪問包變量?
- 10. 如何從MMDevice獲取通道數量?
- 11. 如何從db獲取評論數量?
- 12. 如何從Oracle批量下載數據?
- 13. 如何從Flash變量接收數組?
- 14. 如何調用類函數從變量
- 15. 如何批量發送數據從Django
- 16. 如何從函數中獲取變量?
- 17. 如何從矢量中刪除數字?
- 18. 如何從數據創建矢量?
- 19. 如何從函數回顯變量
- 20. 如何從函數訪問父變量
- 21. 如何從矢量
- 22. 如何從一定數量/偏移量開始AUTOINCREMENT?
- 23. 如何從ASP.NET變量中提供JavaScript變量數據?
- 24. 如何從更新數據變量停止vuejs方法變量
- 25. 如何從另一個數組索引到張量張量流
- 26. 如何從向量轉換爲常量數組
- 27. PHP變量「如何從變量中複製特定數據」
- 28. 如何從數組中編輯變量而不是增量?
- 29. 我如何從位置向量函數法向量MATLAB
- 30. 如何從位置數據計算(計數)軌道數量?
數字是如何表示的?我很努力地想知道如何以O(N^2)方式結束。 –
未被擦除的數字序列應該保持相同的答案嗎? –
似乎類似這樣的問題:http://stackoverflow.com/questions/28223580/how-to-get-the-least-number-after-deleting-k-digits-from-the-input-number,它嘗試找到最小值。 –