✅ Day 73 of 100 Days LeetCode Challenge Problem: 🔹 #3871 – Count Commas in Range II 🔗 https://lnkd.in/gZGbzZ_F Learning Journey: 🔹 Today’s problem asked for the total number of commas used when writing all integers from 1 to n in standard number formatting. 🔹 In this format, a comma appears after every three digits from the right (e.g., 1,000 or 1,000,000). 🔹 Instead of formatting every number individually, I observed that commas start appearing at specific thresholds: • Numbers ≥ 1,000 contribute one comma • Numbers ≥ 1,000,000 contribute two commas • Numbers ≥ 1,000,000,000 contribute three commas, and so on 🔹 I handled each threshold and added the number of integers that contribute commas for that range. Concepts Used: 🔹 Mathematical Pattern Observation 🔹 Conditional Counting 🔹 Large Number Thresholds Key Insight: 🔹 Numbers only start contributing commas after certain digit lengths (powers of 10). 🔹 Counting how many numbers exceed each threshold avoids iterating through all values up to n, making the solution efficient. Complexity: 🔹 Time: O(1) 🔹 Space: O(1) #LeetCode #Algorithms #DataStructures #CodingInterview #100DaysOfCode #SoftwareEngineering #Python #ProblemSolving #LearningInPublic #TechCareers
Counting Commas in Numbers from 1 to n
More Relevant Posts
-
✅ Day 77 of 100 Days LeetCode Challenge Problem: 🔹 #77 – Combinations 🔗 https://lnkd.in/gNFFZQYw Learning Journey: 🔹 Today’s problem required generating all possible combinations of k numbers from the range [1, n]. 🔹 I used a backtracking approach to build combinations step by step. 🔹 At each step, I added a number to the current path and recursively explored further choices. 🔹 Once the size of the current combination reached k, I added it to the result. 🔹 I also applied a pruning condition to stop unnecessary recursion when there aren’t enough elements left to complete a combination. Concepts Used: 🔹 Backtracking 🔹 Recursion 🔹 Combinatorics 🔹 Pruning Optimization Key Insight: 🔹 Backtracking systematically explores all possible combinations while maintaining constraints. 🔹 Pruning helps reduce unnecessary recursive calls, improving efficiency significantly. Complexity: 🔹 Time: O(C(n, k)) 🔹 Space: O(k) (excluding output) #LeetCode #Algorithms #DataStructures #CodingInterview #100DaysOfCode #SoftwareEngineering #Python #ProblemSolving #LearningInPublic #TechCareers
To view or add a comment, sign in
-
-
✅ Day 76 of 100 Days LeetCode Challenge Problem: 🔹 #75 – Sort Colors 🔗 https://lnkd.in/gpH9fEJu Learning Journey: 🔹 Today’s problem required sorting an array containing only 0s, 1s, and 2s (representing colors) in-place without using built-in sort. 🔹 I implemented a selection sort approach, where for each index, I searched for the minimum element in the remaining array. 🔹 Once found, I swapped it with the current position to gradually build the sorted array. 🔹 This ensured the array was sorted in ascending order (0 → 1 → 2). Concepts Used: 🔹 Selection Sort 🔹 In-place Swapping 🔹 Nested Iteration Key Insight: 🔹 Even though the problem has an optimal linear-time solution (Dutch National Flag algorithm), a simple sorting approach like selection sort still works correctly. 🔹 Iteratively placing the smallest remaining element ensures correctness, though not optimal efficiency. Complexity: 🔹 Time: O(n²) 🔹 Space: O(1) #LeetCode #Algorithms #DataStructures #CodingInterview #100DaysOfCode #SoftwareEngineering #Python #ProblemSolving #LearningInPublic #TechCareers
To view or add a comment, sign in
-
-
✅ Day 97 of 100 Days LeetCode Challenge Problem: 🔹 #1281 – Subtract the Product and Sum of Digits of an Integer 🔗 https://lnkd.in/gxTAZc6U Learning Journey: 🔹 Today’s problem involved extracting digits of a number and performing two operations simultaneously. 🔹 I initialized two variables: one for product (pr) and one for sum (sm). 🔹 Using a while loop, I extracted each digit using n % 10. 🔹 Updated the product by multiplying the digit and updated the sum by adding it. 🔹 Reduced the number using integer division (n //= 10) after each step. 🔹 Finally returned the difference between product and sum. Concepts Used: 🔹 Digit Extraction 🔹 While Loop 🔹 Arithmetic Operations 🔹 Number Manipulation Key Insight: 🔹 Both product and sum can be computed in a single traversal of digits. 🔹 Efficient use of modulus and division avoids converting the number to a string. Complexity: 🔹 Time: O(d) 🔹 Space: O(1) #LeetCode #Algorithms #DataStructures #CodingInterview #100DaysOfCode #Python #ProblemSolving #LearningInPublic #TechCareers
To view or add a comment, sign in
-
-
✅ Day 87 of 100 Days LeetCode Challenge Problem: 🔹 #2840 – Check if Strings Can be Made Equal With Operations II 🔗 https://lnkd.in/gY73RBb5 Learning Journey: 🔹 Today’s problem extended the previous one, allowing swaps between indices where the difference is even. 🔹 I observed that this again partitions the string into two independent groups: • Even indices (0, 2, 4, …) • Odd indices (1, 3, 5, …) 🔹 I extracted characters from even and odd positions separately for both strings. 🔹 Then, I sorted these groups and compared them between s1 and s2. 🔹 If both even-index groups and odd-index groups match, the strings can be made equal. Concepts Used: 🔹 String Manipulation 🔹 Index Grouping (Parity-based) 🔹 Sorting 🔹 Greedy Observation Key Insight: 🔹 Since swaps are allowed only between indices with even distance, characters can only move within their parity group. 🔹 Therefore, the problem reduces to checking if both parity groups have identical character distributions. Complexity: 🔹 Time: O(n log n) 🔹 Space: O(n) #LeetCode #Algorithms #DataStructures #CodingInterview #100DaysOfCode #SoftwareEngineering #Python #ProblemSolving #LearningInPublic #TechCareers
To view or add a comment, sign in
-
-
✅ Day 95 of 100 Days LeetCode Challenge Problem: 🔹 #869 – Reordered Power of 2 🔗 https://lnkd.in/gkNXaSFM Learning Journey: 🔹 Today’s problem focused on checking whether the digits of a number can be rearranged to form a power of 2. 🔹 I created a helper function to extract and store the digits of a number. 🔹 Then I sorted the digits of the input number for comparison. 🔹 Next, I generated powers of 2 iteratively and compared their sorted digit lists with the input. 🔹 If any match was found, I returned True. Otherwise, continued until the digit length exceeded the input. Concepts Used: 🔹 Digit Extraction 🔹 Sorting 🔹 Simulation of Powers of 2 🔹 Brute Force Optimization Key Insight: 🔹 Instead of generating permutations (which is expensive), sorting digits allows quick comparison. 🔹 Any valid rearrangement must have the same digit frequency as some power of 2. Complexity: 🔹 Time: O(log n * d log d) 🔹 Space: O(d) #LeetCode #Algorithms #DataStructures #CodingInterview #100DaysOfCode #Python #ProblemSolving #LearningInPublic #TechCareers
To view or add a comment, sign in
-
-
✅ Day 81 of 100 Days LeetCode Challenge Problem: 🔹 #1897 – Redistribute Characters to Make All Strings Equal 🔗 https://lnkd.in/gZ7wZ7JE Learning Journey: 🔹 Today’s problem required checking if we can redistribute characters so that all strings become identical. 🔹 I combined all strings and used a frequency counter to count occurrences of each character. 🔹 Since we can freely move characters between strings, the only requirement is that each character count must be divisible by the number of strings. 🔹 If any character fails this condition, it’s impossible to evenly distribute it. Concepts Used: 🔹 Hash Map / Frequency Counting (Counter) 🔹 String Concatenation 🔹 Divisibility Check Key Insight: 🔹 The exact arrangement doesn’t matter—only the total frequency distribution matters. 🔹 If every character can be equally divided among all strings, a valid configuration always exists. Complexity: 🔹 Time: O(n * k) (n = number of strings, k = average length) 🔹 Space: O(1) (bounded by alphabet size) #LeetCode #Algorithms #DataStructures #CodingInterview #100DaysOfCode #SoftwareEngineering #Python #ProblemSolving #LearningInPublic #TechCareers
To view or add a comment, sign in
-
-
✅ Day 74 of 100 Days LeetCode Challenge Problem: 🔹 #653 – Two Sum IV: Input is a BST 🔗 https://lnkd.in/g9vDFKMA Learning Journey: 🔹 Today’s problem required checking whether there exist two nodes in a Binary Search Tree whose values sum to k. 🔹 I performed a Depth-First Search (DFS) traversal using a stack to visit all nodes of the tree. 🔹 While traversing, I stored each node’s value in a list. 🔹 Then I used a hash set to track visited values and checked whether the complement (k - value) already exists. 🔹 If the complement is found, it means two numbers sum to k, so the function returns True. Concepts Used: 🔹 Depth-First Search (DFS) 🔹 Stack-based Tree Traversal 🔹 Hash Set for Fast Lookup 🔹 Two Sum Pattern Key Insight: 🔹 The classic Two Sum approach works well after collecting values from the BST. 🔹 Using a set allows O(1) lookup, making it efficient to check complements during iteration. Complexity: 🔹 Time: O(n) 🔹 Space: O(n) #LeetCode #Algorithms #DataStructures #CodingInterview #100DaysOfCode #SoftwareEngineering #Python #ProblemSolving #LearningInPublic #TechCareers
To view or add a comment, sign in
-
-
✅ Day 80 of 100 Days LeetCode Challenge Problem: 🔹 #3876 – Construct Uniform Parity Array II 🔗 https://lnkd.in/gENuCXJc Learning Journey: 🔹 Today’s problem focused on determining whether we can construct an array where all elements are either all even or all odd using allowed operations. 🔹 The key observation was around parity (odd/even nature) of numbers. 🔹 Since we can subtract elements, the parity depends on whether differences can produce consistent odd or even values. 🔹 I simplified the logic by checking: • If the minimum element is odd → we can make all elements odd • Otherwise, verify if all elements are already even Concepts Used: 🔹 Parity (Odd/Even Analysis) 🔹 Mathematical Observation 🔹 Greedy Logic Key Insight: 🔹 Subtracting numbers preserves or changes parity in predictable ways. 🔹 The smallest element plays a crucial role in determining whether all elements can be transformed into the same parity. Complexity: 🔹 Time: O(n) 🔹 Space: O(1) #LeetCode #Algorithms #DataStructures #CodingInterview #100DaysOfCode #SoftwareEngineering #Python #ProblemSolving #LearningInPublic #TechCareers
To view or add a comment, sign in
-
-
🚀 LeetCode Win: Missing Number (Beats 100%) Solved this problem using a simple mathematical insight instead of overcomplicating the logic ⚡ 🧠 Core Idea: If a list contains numbers from 0 → n, one number is missing. 👉 So instead of searching for it… I compared: Expected sum (0 → n) Actual sum (given array) ⚙️ Approach: Generate range → 0 to n Compute expected sum Subtract actual array sum ✅ Missing Number = Expected Sum - Actual Sum 🔥 Why this approach stands out: ⏱️ O(n) Time Complexity 💾 O(1) Space Complexity ❌ No extra loops ❌ No sorting ✔️ Clean & efficient 📊 Result: ⚡ Runtime: 0 ms (Beats 100%) 📉 Memory: Optimized 💭 Key Learning: The best solutions aren’t always complex. Sometimes, stepping back and thinking mathematically changes everything. 🚀 Consistency check: Showing up, solving daily, improving 1% 💪 #LeetCode #Algorithms #DataStructures #ProblemSolving #Python #CodingJourney #100DaysOfCode #DeveloperLife #WomenWhoCode #TechGrowth #CodeDaily #ProgrammingLife #SoftwareEngineer #ConsistencyWins
To view or add a comment, sign in
-
-
✅ Day 75 of 100 Days LeetCode Challenge Problem: 🔹 #415 – Add Strings 🔗 https://lnkd.in/gHVN5VfP Learning Journey: 🔹 Today’s problem required adding two numbers represented as strings without directly using built-in conversion functions. 🔹 I implemented a helper function to convert a string into its numeric value by iterating through digits and multiplying them with the correct powers of 10. 🔹 After converting both strings to integers, I performed the addition. 🔹 Then, I converted the result back into a string by extracting digits using modulo (%) and reversing the constructed list. Concepts Used: 🔹 String to Number Conversion 🔹 Mathematical Digit Handling 🔹 Modulo & Division 🔹 String Construction Key Insight: 🔹 Manually converting between string and integer helps understand how numbers are built and processed internally. 🔹 Constructing the result in reverse and then reversing it ensures correct digit order. Complexity: 🔹 Time: O(n + m) 🔹 Space: O(n + m) #LeetCode #Algorithms #DataStructures #CodingInterview #100DaysOfCode #SoftwareEngineering #Python #ProblemSolving #LearningInPublic #TechCareers
To view or add a comment, sign in
-
Explore related topics
Explore content categories
- Career
- Productivity
- Finance
- Soft Skills & Emotional Intelligence
- Project Management
- Education
- Technology
- Leadership
- Ecommerce
- User Experience
- Recruitment & HR
- Customer Experience
- Real Estate
- Marketing
- Sales
- Retail & Merchandising
- Science
- Supply Chain Management
- Future Of Work
- Consulting
- Writing
- Economics
- Artificial Intelligence
- Employee Experience
- Workplace Trends
- Fundraising
- Networking
- Corporate Social Responsibility
- Negotiation
- Communication
- Engineering
- Hospitality & Tourism
- Business Strategy
- Change Management
- Organizational Culture
- Design
- Innovation
- Event Planning
- Training & Development