Cody

Problem 2674. Generalised Hamming Number

Solution 704109

Submitted on 21 Jul 2015 by Tomasz
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

Test Suite

Test Status Code Input and Output
1   Pass
%% X = 5; n=5; y_correct = 5; assert(isequal(hamming2(X,n),y_correct))

ans = 3 ans = 1 ans = 1 ans = 5

2   Pass
%% X = 10; n=5; y_correct = 9; assert(isequal(hamming2(X,n),y_correct))

ans = 4 ans = 3 ans = 1 ans = 1 ans = 9

3   Pass
%% X = 100; n=5; y_correct = 34; assert(isequal(hamming2(X,n),y_correct))

ans = 10 ans = 8 ans = 6 ans = 4 ans = 3 ans = 2 ans = 1 ans = 34

4   Pass
%% X = 100; n=7; y_correct = 46; assert(isequal(hamming2(X,n),y_correct))

ans = 6 ans = 4 ans = 3 ans = 1 ans = 1 ans = 15 ans = 6 ans = 3 ans = 2 ans = 1 ans = 12 ans = 4 ans = 3 ans = 1 ans = 8 ans = 3 ans = 1 ans = 1 ans = 5 ans = 2 ans = 1 ans = 3 ans = 1 ans = 1 ans = 2 ans = 1 ans = 1 ans = 46

5   Pass
%% X = 100; n=100; y_correct = 100; assert(isequal(hamming2(X,n),y_correct))

ans = 3 ans = 1 ans = 4 ans = 1 ans = 1 ans = 5 ans = 1 ans = 1 ans = 1 ans = 6 ans = 1 ans = 1 ans = 1 ans = 1 ans = 7 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 8 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 9 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 10 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 11 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 12 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 13 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 14 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 15 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 16 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 17 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 18 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 19 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 20 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 21 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 22 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 2 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 3 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 26 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 2 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 3 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 4 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 5 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 6 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 33 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 2 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 3 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 4 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 5 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 6 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 7 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 8 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 9 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 11 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 2 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 3 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 4 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 50 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 2 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 an...

6   Pass
%% X = 100; n=13; y_correct = 62; assert(isequal(hamming2(X,n),y_correct))

ans = 3 ans = 3 ans = 1 ans = 7 ans = 3 ans = 1 ans = 4 ans = 1 ans = 1 ans = 12 ans = 3 ans = 1 ans = 4 ans = 1 ans = 1 ans = 1 ans = 1 ans = 6 ans = 2 ans = 1 ans = 3 ans = 1 ans = 1 ans = 4 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 24 ans = 3 ans = 1 ans = 1 ans = 5 ans = 1 ans = 1 ans = 2 ans = 1 ans = 1 ans = 8 ans = 3 ans = 1 ans = 4 ans = 1 ans = 1 ans = 5 ans = 1 ans = 1 ans = 1 ans = 1 ans = 2 ans = 1 ans = 1 ans = 1 ans = 16 ans = 3 ans = 1 ans = 4 ans = 1 ans = 1 ans = 1 ans = 1 ans = 6 ans = 1 ans = 1 ans = 2 ans = 1 ans = 1 ans = 3 ans = 1 ans = 1 ans = 1 ans = 10 ans = 2 ans = 1 ans = 3 ans = 1 ans = 1 ans = 4 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 6 ans = 1 ans = 1 ans = 1 ans = 1 ans = 2 ans = 1 ans = 1 ans = 1 ans = 3 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 1 ans = 2 ans = 1 ans = 1 ans = 1 ans = 1 ans = 62

7   Fail
%% X = 10^13; n=7; y_correct = 19674; assert(isequal(hamming2(X,n),y_correct))

ans = 160 ans = 149 ans = 139 ans = 129 ans = 119 ans = 109 ans = 101 ans = 91 ans = 84 ans = 76 ans = 68 ans = 62 ans = 54 ans = 49 ans = 42 ans = 37 ans = 32 ans = 26 ans = 23 ans = 19 ans = 15 ans = 12 ans = 9 ans = 6 ans = 5 ans = 3 ans = 1 ans = 1 ans = 1621 ans = 154 ans = 143 ans = 132 ans = 123 ans = 113 ans = 104 ans = 95 ans = 87 ans = 79 ans = 71 ans = 64 ans = 57 ans = 50 ans = 45 ans = 39 ans = 33 ans = 29 ans = 24 ans = 20 ans = 16 ans = 13 ans = 10 ans = 7 ans = 6 ans = 3 ans = 2 ans = 1 ans = 1520 ans = 147 ans = 137 ans = 126 ans = 117 ans = 107 ans = 99 ans = 90 ans = 81 ans = 75 ans = 6

Suggested Problems

More from this Author43

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!