From 6b642265fd69b901fbf77242ea40a91f6c05887b Mon Sep 17 00:00:00 2001 From: rrbharath Date: Tue, 28 Jul 2026 17:14:08 -0400 Subject: [PATCH] Add Dart solution for Sqrt(x) --- dart/sqrtx.dart | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 dart/sqrtx.dart diff --git a/dart/sqrtx.dart b/dart/sqrtx.dart new file mode 100644 index 0000000..cb77769 --- /dev/null +++ b/dart/sqrtx.dart @@ -0,0 +1,33 @@ +/* +Given a non-negative integer x, return the square root of x rounded down to the nearest integer. + +The returned integer should be non-negative as well. +*/ + +class Solution { + int mySqrt(int x) { + if (x < 2) { + return x; + } + + int left = 1; + int right = x ~/ 2; + int ans = 1; + + while (left <= right) { + final int mid = left + ((right - left) ~/ 2); + final int square = mid * mid; + + if (square == x) { + return mid; + } else if (square < x) { + ans = mid; + left = mid + 1; + } else { + right = mid - 1; + } + } + + return ans; + } +}