Remove Digits To Have Minimum Number - Coding in a Smart Way



Remove Digits To Have Minimum Number - Coding in a Smart Way

Written by truongkhanh on Discussion Actually, this problem asks us to decide which digit to keep to have minimum number. Therefore, we will check from left to right and determine the minimum digit we can keep at each time. In the above example, we need to keep 2 digits. The first digit we want to keep is 2 because it is minimum. Then, for 6, 7, and 4, we decide to keep 4. Thus we have 24. However, there are cases where we can not just select the minimum digit. For example, N = 32514, K = 2. We need to keep 3 digits. The most-left digit can not be 1 because we do no have enough digit to keep. So our finding is that each time, we select a minimum digit such that there still have enough digits to keep. In the example where N = 32514 and K = 2, we need to keep 3 digits. First, we find the minimum of [3, 2, 5] because we need to have at least 2 digits on the right. It is 2. Then, we will find the minimum of [5, 1] because we need to find after the digit 2 and stop at 1 to keep 1 digit.

Read full article from Remove Digits To Have Minimum Number - Coding in a Smart Way


No comments:

Post a Comment

Labels

Algorithm (219) Lucene (130) LeetCode (97) Database (36) Data Structure (33) text mining (28) Solr (27) java (27) Mathematical Algorithm (26) Difficult Algorithm (25) Logic Thinking (23) Puzzles (23) Bit Algorithms (22) Math (21) List (20) Dynamic Programming (19) Linux (19) Tree (18) Machine Learning (15) EPI (11) Queue (11) Smart Algorithm (11) Operating System (9) Java Basic (8) Recursive Algorithm (8) Stack (8) Eclipse (7) Scala (7) Tika (7) J2EE (6) Monitoring (6) Trie (6) Concurrency (5) Geometry Algorithm (5) Greedy Algorithm (5) Mahout (5) MySQL (5) xpost (5) C (4) Interview (4) Vi (4) regular expression (4) to-do (4) C++ (3) Chrome (3) Divide and Conquer (3) Graph Algorithm (3) Permutation (3) Powershell (3) Random (3) Segment Tree (3) UIMA (3) Union-Find (3) Video (3) Virtualization (3) Windows (3) XML (3) Advanced Data Structure (2) Android (2) Bash (2) Classic Algorithm (2) Debugging (2) Design Pattern (2) Google (2) Hadoop (2) Java Collections (2) Markov Chains (2) Probabilities (2) Shell (2) Site (2) Web Development (2) Workplace (2) angularjs (2) .Net (1) Amazon Interview (1) Android Studio (1) Array (1) Boilerpipe (1) Book Notes (1) ChromeOS (1) Chromebook (1) Codility (1) Desgin (1) Design (1) Divide and Conqure (1) GAE (1) Google Interview (1) Great Stuff (1) Hash (1) High Tech Companies (1) Improving (1) LifeTips (1) Maven (1) Network (1) Performance (1) Programming (1) Resources (1) Sampling (1) Sed (1) Smart Thinking (1) Sort (1) Spark (1) Stanford NLP (1) System Design (1) Trove (1) VIP (1) tools (1)

Popular Posts