Problem
Leaderboard
🎁 July Giveaway
This July, you have the opportunity to hone your skills and win the Macbook Air, Sony WH-1000XM4 headphones, $50 gift card and much more.
🎮 How to Play
Complete Educative’s daily coding challenge all month.
Choose your preferred programming language before you start, you can switch it anytime, even mid-problem.
Be mindful of your attempts, you only get a limited number, so make each one count.
Keep your streak alive, the longer it runs, the more raffle entry tickets you rack up.
Earn tickets and increase your chances of winning the draw.
🎟️ How to earn Tickets
ActionTickets Earned
Complete Daily Challenge
+1
10-Day Streak
+10
20-Day Streak
+20
30-Day Streak
+30
LinkedIn post with #30DaysofCode Everyday (and tag Educative)
+2 per post
Most-Liked Post Overall
+20
Top of Leaderboard
+50
Leaderboard: 2nd place
+30
Leaderboard: 3rd place
+20

Problem: All O`one Data Structure

Statement

Design a data structure that tracks the frequency of string keys and allows for efficient updates and queries.

Implement the AllOne class with these methods:

  • Constructor: Initializes the data structure.

  • inc(String key): Increases the count of the given key by 11. If the key is absent, insert it with a count of 11.

  • dec(String key): Decreases the count of the given key by 11. If the count becomes 00 after decrementing, remove the key entirely. The assumption is that the key exists when this function is called.

  • getMaxKey(): Returns any one key with the highest count. If the data structure is empty, return an empty string.

  • getMinKey(): Returns any one key with the lowest count. If the data structure is empty, return an empty string.

Note: All operations must be performed in average O(1)O(1) time complexity.

Constraints:

  • 11 \leq key.length 10\leq 10

  • key consists only of lowercase English letters.

  • It is guaranteed that each call to dec is made with a key that exists in the data structure.

  • At most 5×1025 \times 10^2 calls will be made to inc, dec, getMaxKey, and getMinKey.

Problem
Leaderboard
🎁 July Giveaway
This July, you have the opportunity to hone your skills and win the Macbook Air, Sony WH-1000XM4 headphones, $50 gift card and much more.
🎮 How to Play
Complete Educative’s daily coding challenge all month.
Choose your preferred programming language before you start, you can switch it anytime, even mid-problem.
Be mindful of your attempts, you only get a limited number, so make each one count.
Keep your streak alive, the longer it runs, the more raffle entry tickets you rack up.
Earn tickets and increase your chances of winning the draw.
🎟️ How to earn Tickets
ActionTickets Earned
Complete Daily Challenge
+1
10-Day Streak
+10
20-Day Streak
+20
30-Day Streak
+30
LinkedIn post with #30DaysofCode Everyday (and tag Educative)
+2 per post
Most-Liked Post Overall
+20
Top of Leaderboard
+50
Leaderboard: 2nd place
+30
Leaderboard: 3rd place
+20

Problem: All O`one Data Structure

Statement

Design a data structure that tracks the frequency of string keys and allows for efficient updates and queries.

Implement the AllOne class with these methods:

  • Constructor: Initializes the data structure.

  • inc(String key): Increases the count of the given key by 11. If the key is absent, insert it with a count of 11.

  • dec(String key): Decreases the count of the given key by 11. If the count becomes 00 after decrementing, remove the key entirely. The assumption is that the key exists when this function is called.

  • getMaxKey(): Returns any one key with the highest count. If the data structure is empty, return an empty string.

  • getMinKey(): Returns any one key with the lowest count. If the data structure is empty, return an empty string.

Note: All operations must be performed in average O(1)O(1) time complexity.

Constraints:

  • 11 \leq key.length 10\leq 10

  • key consists only of lowercase English letters.

  • It is guaranteed that each call to dec is made with a key that exists in the data structure.

  • At most 5×1025 \times 10^2 calls will be made to inc, dec, getMaxKey, and getMinKey.