Cody

# Problem 83. Prime factor digits

Solution 719170

Submitted on 21 Aug 2015 by Ian Riley
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
%% n = 2; p_correct = 1; assert(isequal(factor_digits(n),p_correct))

pl = 2 ntest = 2 pnext = 0 ntest = 1 p = 1

2   Pass
%% n = 26; p_correct = [1 0 0 0 0 1]; assert(isequal(factor_digits(n),p_correct))

pl = 2 3 5 7 11 13 17 19 23 ntest = 26 pnext = 0 ntest = 13 p = 1 ntest = 26 pnext = 0 p = 0 1 ntest = 26 pnext = 0 p = 0 0 1 ntest = 26 pnext = 0 p = 0 0 0 1 ntest = 26 pnext = 0 p = 0 0 0 0 1 ntest = 26 pnext = 0 ntest = 2 p = 1 0 0 0 0 1 ntest = 26 pnext = 0 p = 0 1 0 0 0 0 1 ntest = 26 pnext = 0 p = 0 0 1 0 0 0 0 1 ntest = 26 pnext = 0 p = 0 0 0 1 0 0 0 0 1 p = 0 0 1 0 0 0 0 1 p = 0 1 0 0 0 0 1 p = 1 0 0 0 0 1

3   Pass
%% n = 168; p_correct = [1 0 1 3]; assert(isequal(factor_digits(n),p_correct))

pl = Columns 1 through 30 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 Columns 31 through 39 127 131 137 139 149 151 157 163 167 ntest = 168 pnext = 0 ntest = 84 ntest = 42 ntest = 21 p = 3 ntest = 168 pnext = 0 ntest = 56 p = 1 3 ntest = 168 pnext = 0 p = 0 1 3 ntest = 168 pnext = 0 ntest = 24 p = 1 0 1 3 ntest = 168 pnext = 0 p = 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 Column 31 3 ntest = 168 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 Columns 31 through 32 1 3 ntest = 168 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 Columns 31 through 33 0 1 3 ntest = 168 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 31 through 34 1 0 1 3 ntest = 168 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 31 through 35 0 1 0 1 3 ntest = 168 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 31 through 36 0 0 1 0 1 3 ntest = 168 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 31 through 37 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 31 through 38 0 0 0 0 1 0 1 3 ntest = 168 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 31 through 39 0 0 0 0 0 1 0 1 3 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 31 through 38 0 0 0 0 1 0 1 3 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 31 through 37 0 0 0 1 0 1 3 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 31 through 36 0 0 1 0 1 3 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 31 through 35 0 1 0 1 3 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 31 through 34 1 0 1 3 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 Columns 31 through 33 0 1 3 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 Columns 31 through 32 1 3 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 Column 31 3 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 ...

4   Pass
%% n = 999; p_correct = [1 0 0 0 0 0 0 0 0 0 3 0]; assert(isequal(factor_digits(n),p_correct))

pl = Columns 1 through 30 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 Columns 31 through 60 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 Columns 61 through 90 283 293 307 311 313 317 331 337 347 349 353 359 367 373 379 383 389 397 401 409 419 421 431 433 439 443 449 457 461 463 Columns 91 through 120 467 479 487 491 499 503 509 521 523 541 547 557 563 569 571 577 587 593 599 601 607 613 617 619 631 641 643 647 653 659 Columns 121 through 150 661 673 677 683 691 701 709 719 727 733 739 743 751 757 761 769 773 787 797 809 811 821 823 827 829 839 853 857 859 863 Columns 151 through 168 877 881 883 887 907 911 919 929 937 941 947 953 967 971 977 983 991 997 ntest = 999 pnext = 0 p = 0 ntest = 999 pnext = 0 ntest = 333 ntest = 111 ntest = 37 p = 3 0 ntest = 999 pnext = 0 p = 0 3 0 ntest = 999 pnext = 0 p = 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 ntest = 27 p = 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 Column 31 0 ntest = 999 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 Columns 31 through 32 3 0 ntest = 999 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 Columns 31 through 33 0 3 0 ntest = 999 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 Columns 31 through 34 0 0 3 0 ntest = 999 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 Columns 31 through 35 0 0 0 3 0 ntest = 999 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 Columns 31 through 36 0 0 0 0 3 0 ntest = 999 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 Columns 31 through 37 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 Columns 31 through 38 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 Columns 31 through 39 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 Columns 31 through 40 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 Columns 31 through 41 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 31 through 42 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 31 through 43 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 31 through 44 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 31 through 45 0 0 0 1 0 0 0 0 0 0 0 0 0 3 0 ntest = 999 pnext = 0 p = Columns 1 through 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 31 through 46 0 0 ...