Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,846 questions

51,767 answers

573 users

How to find the next sparse number which greater than or equal to a given number in Scala

1 Answer

0 votes
/*
    If there are no two consecutive 1s in a number binary representation, 
    it is Sparse. 5 (101) is sparse, 6 (110) is not. 
*/
class Number {
    def is_sparse(n: Int): Boolean = {
        var result = n & (n >> 1);
            
        if (result == 0)
          return true;
            
        return false;
    }
    def next_sparse(number: Int): Int = {
        var n: Int = number;
        while (true) {
            if (is_sparse(n)) {
                return n; 
            }
            n += 1;
        }
        return 0;
    }
}
 
object Main {
    def main(args: Array[String]): Unit = {
        var obj: Number = new Number();
     
        println(obj.next_sparse(6));
        println(obj.next_sparse(5));
        println(obj.next_sparse(38));
        println(obj.next_sparse(305));
    }
}
 
 
 
 
/*
run:
  
8
5
40
320
  
*/

 



answered Oct 12, 2021 by avibootz
...