Dutch national flag problem in Javascript

Image
Dutch national flag problem and solution in Javascript Problem statement:   The Dutch national flag (DNF) problem is one of the most popular programming problems proposed by Edsger Dijkstra. The flag of the Netherlands consists of three colors: white, red, and blue. The task is to randomly arrange balls of white, red, and blue such that balls of the same color are placed together. Now, let's consider an array with 3 distinct values say 0, 1 and 2. We won't be using any sort method and we need to sort this array in 0(n). Input Array :  let   arr  = [ 0 ,  2 ,  1 ,  0 ,  1 ,  2 ,  0 ,  2 ]; Expected Output: [ 0, 0, 0, 1, 1, 2, 2, 2 ] Solution Approach : When we see expected output, we can clearly see that sorted array is divided into 3 sections having values 0 , 1 and 2. So, let's divide the array in 3 sections: a) from 0th index to left boundary b) from left boundary to right boundary c) from right boundary to last index. Now we will create 2 pointers : left (starting from 0

Javascript Problem: Find the next perfect square!!

Codewars Problem and solution with approach explained 

 
 

Objective: 

In this challenge, we will solve the “Find the next perfect square!” Codewars puzzle using javascript. 

Problem statement: 

You might know some pretty large perfect squares. But what about the NEXT one? 

Complete the findNextSquare method that finds the next integral perfect square after the one passed as a parameter. Recall that an integral perfect square is an integer n such that sqrt(n) is also an integer. 

If the parameter is itself not a perfect square then -1 should be returned. You may assume the parameter is positive. 

Examples: 

findNextSquare(121) --> returns 144  

findNextSquare(625) --> returns 676  

findNextSquare(114) --> returns -1 since 114 is not a perfect 

Solution Approach: 

Step 1: check if the perfect square root of the given number say “n” is available. 

Step 2: if yes, then simply get the square of the “n+1” number. 

Step 3: if no, return false. 

Keeping these  points in mind, let’s jump to the solution now: 

  

  

Solution  : 

function findNextSquare(sq) { 

  // Return the next square if sq is a perfect square, -1 otherwise 

  if (Number.isInteger(Math.sqrt(sq))) 

    return (Math.sqrt(sq)+1)*(Math.sqrt(sq)+1); 

  else 

    return -1; 

} 

 

Comments

Post a Comment

Popular posts from this blog

Ice Cream Parlor : Hackerrank Problem and Solution

Disemvowel Trolls || Codewars problem and solution in Javascript || Topic : Strings and RegEx