Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Added mos algorithm and dice thrower #6591

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
BEASTSHRIRAM wants to merge 17 commits into TheAlgorithms:master
base: master
Choose a base branch
Loading
from BEASTSHRIRAM:added-mos-algorithm-dice-thrower

Conversation

Copy link
Contributor

@BEASTSHRIRAM BEASTSHRIRAM commented Oct 2, 2025

After contributing to TheAlgorithms, I realized many CP students visit this repository for learning resources. I've added two important algorithms that were missing:

  1. Mo's Algorithm - Square root decomposition for offline range queries(https://www.geeksforgeeks.org/dsa/mos-algorithm-query-square-root-decomposition-set-1-introduction/)(https://codeforces.com/blog/entry/7383)

    • Essential for competitive programming contests
    • O(n√n) time complexity for multiple range queries
    • Very common in Codeforces and other CP platforms
  2. DiceThrower - Recursive backtracking for dice combinations

    • Great example of recursion and backtracking
    • Helps students understand recursive problem-solving
    • Generates all possible dice roll combinations for target sum

Both algorithms include comprehensive test suites and follow all contribution guidelines. These will help students build stronger foundations in competitive programming.

  • I have read CONTRIBUTING.md.
  • This pull request is all my own work -- I have not plagiarized it.
  • All filenames are in PascalCase.
  • All functions and variable names follow Java naming conventions.
  • All new algorithms have a URL in their comments that points to Wikipedia or other similar explanations.
  • All new code is formatted with clang-format -i --style=file path/to/your/file.java

- Mo's Algorithm: Square root decomposition for offline range queries(Imp in CP)
- DiceThrower: Recursive backtracking for dice combinations(very imp)
- Both algorithms include comprehensive test suites
- Formatted with clang-format and i follow contribution guidelines
Copy link

codecov-commenter commented Oct 2, 2025
edited
Loading

Codecov Report

❌ Patch coverage is 97.50000% with 3 lines in your changes missing coverage. Please review.
✅ Project coverage is 75.89%. Comparing base (9484c7e) to head (b13cd3a).

Files with missing lines Patch % Lines
...in/java/com/thealgorithms/others/MosAlgorithm.java 97.80% 0 Missing and 2 partials ⚠️
.../java/com/thealgorithms/recursion/DiceThrower.java 96.55% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@ Coverage Diff @@
## master #6591 +/- ##
============================================
+ Coverage 75.75% 75.89% +0.13% 
- Complexity 5772 5812 +40 
============================================
 Files 703 705 +2 
 Lines 19777 19897 +120 
 Branches 3832 3858 +26 
============================================
+ Hits 14982 15100 +118 
 Misses 4215 4215 
- Partials 580 582 +2 

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Contributor Author

BEASTSHRIRAM commented Oct 2, 2025
edited
Loading

there was an dicethrow.java file but it mainly focuses on finding the number of ways to get sum x with n dice, each having m faces. but mine is is not a problem it gives recursive and backtracking approach.
Literally it is great to contribute in such a helpful website great work guys , please merge this work @alxkm .
Love from INDIA

Copy link
Contributor Author

BEASTSHRIRAM commented Oct 5, 2025
edited
Loading

@alxkm i have fixed partitionproblem.java file and also fixed Mos algorithm and Dicethrower which i had commited but got less patch coverage by codecov please merge this commit under hacktoberfest 2025

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Reviewers

@DenizAltunkapan DenizAltunkapan Awaiting requested review from DenizAltunkapan DenizAltunkapan is a code owner

@yanglbme yanglbme Awaiting requested review from yanglbme yanglbme is a code owner

@alxkm alxkm Awaiting requested review from alxkm alxkm is a code owner

At least 1 approving review is required to merge this pull request.

Assignees
No one assigned
Labels
None yet
Projects
None yet
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

AltStyle によって変換されたページ (->オリジナル) /