GitHub - degski/isqrt: Fastest way to calculate the integer square root exposed

2 min read Original article ↗

Skip to content

Navigation Menu

Sign in

Appearance settings

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

/ isqrt Public

Repository files navigation

isqrt

Implementing integer isqrt ( integer ), the fastest way:

#include <cassert>
#include <cmath>

// Integer square root.
template<typename SizeType>
[[nodiscard]] inline constexpr SizeType isqrt ( SizeType val_ ) noexcept {
    assert ( val_ > 0 );
    return static_cast<SizeType> ( std::sqrt ( static_cast<double> ( val_ ) ) );
}

About

Fastest way to calculate the integer square root exposed

Resources

Readme

License

MIT license

Activity

Stars

2 stars

Watchers

1 watching

Forks

0 forks

Releases

No releases published

Languages