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,845 questions

51,766 answers

573 users

How to find the next sparse number which greater than a given number in Swift

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 {
    func is_sparse(_ n: Int) -> Bool {
        var result : Int
         
        result = n & (n >> 1);
         
        if (result == 0) {
          return true;
        }
             
        return false;
    }
    
    func next_sparse(_ number: Int) -> Int {
        var n: Int = number;
        while (true) {
          n += 1;
          if (self.is_sparse(n)) {
            return n;
          }
        }
    }
}
func main() {
    let obj: Number = Number();
   
    print(obj.next_sparse(72));
    print(obj.next_sparse(5));
    print(obj.next_sparse(36));
    print(obj.next_sparse(305));
 
}
 
main();
 
 

 
/*
run:
    
73
8
37
320
    
*/

 



answered Oct 12, 2021 by avibootz
...