Cody

# Problem 1090. Create a random logical vector of N elements of which M are true.

Solution 459987

Submitted on 21 Jun 2014 by rifat
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 = 10; m = 4; y = random_binary(n,m); assert(islogical(y) && isequal(sum(y),m) && abs(std(diff(y)>0)-0.45)<0.2)

ans = 0 0 1 1 0 0 1 0 0 1

2   Pass
%% n = 1000; m = 500; y = random_binary(n,m); assert(islogical(y) && isequal(sum(y),m) && abs(std(diff(y)>0)-0.45)<0.05)

ans = Columns 1 through 16 1 1 0 0 0 1 1 0 0 1 0 0 0 1 0 0 Columns 17 through 32 0 0 0 0 0 0 1 1 1 1 0 1 0 1 1 0 Columns 33 through 48 0 1 1 1 0 1 1 0 1 1 0 0 0 0 0 1 Columns 49 through 64 0 1 1 0 0 1 0 0 1 0 1 1 1 1 0 0 Columns 65 through 80 0 0 0 1 1 1 1 0 1 0 0 1 1 0 1 1 Columns 81 through 96 0 0 0 0 0 1 1 1 0 0 0 1 0 0 0 0 Columns 97 through 112 1 0 0 0 1 0 0 1 1 0 0 0 0 0 0 1 Columns 113 through 128 1 1 0 0 1 0 1 1 1 1 1 0 1 1 0 0 Columns 129 through 144 1 0 1 0 0 1 1 0 0 0 0 0 0 0 1 0 Columns 145 through 160 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 Columns 161 through 176 1 1 0 0 0 1 0 1 0 1 1 1 1 1 1 1 Columns 177 through 192 1 0 0 0 0 1 0 1 1 0 0 0 1 0 1 0 Columns 193 through 208 1 1 1 1 0 0 1 1 1 0 1 1 1 0 1 0 Columns 209 through 224 1 1 1 0 1 0 1 0 0 1 0 0 0 0 1 1 Columns 225 through 240 1 0 0 0 1 0 1 1 0 1 1 0 1 1 0 1 Columns 241 through 256 1 1 0 1 0 1 1 0 1 1 0 0 1 1 0 0 Columns 257 through 272 0 0 0 0 1 0 0 1 0 1 1 1 0 0 1 1 Columns 273 through 288 1 1 0 0 1 0 0 1 1 1 1 1 0 0 1 0 Columns 289 through 304 1 0 0 0 0 1 0 0 1 0 0 0 1 1 1 0 Columns 305 through 320 1 0 1 0 1 1 0 0 0 1 0 1 1 0 1 1 Columns 321 through 336 0 1 0 1 1 0 0 1 1 1 0 1 1 0 0 0 Columns 337 through 352 1 1 1 0 0 1 0 0 0 1 1 1 1 1 1 0 Columns 353 through 368 0 1 0 1 0 1 1 0 1 0 1 1 1 1 1 1 Columns 369 through 384 0 1 1 1 1 0 1 0 1 0 0 0 0 0 0 0 Columns 385 through 400 0 1 1 0 1 1 1 0 0 0 0 1 1 1 0 1 Columns 401 through 416 0 1 0 1 1 0 0 1 1 1 0 1 0 1 1 0 Columns 417 through 432 1 1 1 1 1 1 0 0 0 0 0 0 1 0 1 0 Columns 433 through 448 1 0 1 1 1 1 1 1 0 1 0 1 1 1 1 1 Columns 449 through 464 1 0 0 0 1 1 0 0 0 1 1 1 1 1 0 1 Columns 465 through 480 0 1 1 1 0 0 0 1 0 1 0 1 0 0 0 0 Columns 481 through 496 1 0 1 1 1 1 0 0 1 0 0 0 1 1 0 0 Columns 497 through 512 0 1 1 0 0 1 0 1 1 1 1 0 1 1 1 0 Columns 513 through 528 0 0 0 1 1 1 0 0 0 0 0 0 0 0 1 1 Columns 529 through 544 0 0 1 1 0 0 1 0 0 0 1 0 0 0 1 0 Columns 545 through 560 1 1 0 1 0 0 1 0 0 0 0 1 1 1 0 1 Columns 561 through 576 1 1 0 1 0 1 1 0 1 1 1 1 1 1 1 0 Columns 577 through 592 1 1 0 0 1 1 1 1 1 0 1 0 1 0 0 1 Columns 593 through 608 1 1 0 0 1 0 0 0 1 1 1 0 0 1 1 1 Columns 609 through 624 0 0 0 1 0 1 1 0 0 1 1 1 1 1 1 1 Columns 625 through 640 1 1 0 0 0 1 0 1 0 1 0 1 0 0 0 1 Columns 641 through 656 0 1 1 0 0 1 0 0 0 1 1 1 0 0 0 1 Columns 657 through 672 0 1 0 1 1 0 1 0 0 1 1 1 0 0 0 1 Columns 673 through 688 1 1 1 0 0 0 1 1 0 0 1 1 0 0 1 0 Columns 689 through 704 1 0 1 0 1 1 1 0 1 1 0 1 0 0 0 1 Columns 705 through 720 0 0 1 1 0 0 1 0 0 1 1 0 1 1 0 1 Columns 721 through 736 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 Columns 737 through 752 0 0 0 0 1 0 1 1 1 1 0 1 0 0 1 0 Columns 753 through 768 0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0 Columns 769 through 784 1 0 0 1 0 0 1 1 0 0 0 1 1 1 0 0 Columns 785 through 800 1 1 1 1 0 0 0 1 1 1 0 1 1 0 1 0 Columns 801 through 816 0 0 0 1 1 1 1 0 1 0 1 0 1 1 1 0 Columns 817 through 832 1 0 1 1 0 1 1 0 1 1 1 0 0 1 1 0 Columns 833 through 848 0 0 0 0 1 1 0 1 1 0 1 1 0 0 0 1 Columns 849 through 864 0 0 1 0 1 1 1 0 1 1 0 0 1 1 0 0 Columns 865 through 880 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 Columns 881 through 896 1 0 0 0 1 1 1 0 0 1 0 1 0 1 0 1 Columns 897 through 912 1 0 0 0 0 1 0 1 1 0 1 1 0 1 1 0 Columns 913 through 928 1 0 1 0 1 1 0 0 1 0 1 1 1 0 0 0 Columns 929 through 944 1 0 1 1 0 1 0 1 0 0 0 1 0 0 1 1 Columns 945 through 960 0 1 1 0 1 0 1 1 0 1 0 0 1 1 0 0 Columns 961 through 976 1 0 1 1 0 0 1 0 1 0 0 1 0 0 1 1 Columns 977 through 992 1 0 0 0 0 0 0 0 0 1 1 1 1 1 0 1 Columns 993 through 1000 1 1 1 1 1 0 0 0

3   Pass
%% n = 500; m = 20; y = random_binary(n,m); assert(islogical(y) && isequal(sum(y),m) && abs(std(diff(y)>0)-0.18)<0.05)

ans = Columns 1 through 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 Columns 17 through 32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 Columns 33 through 48 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 49 through 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 Columns 65 through 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 81 through 96 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 Columns 97 through 112 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 113 through 128 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 Columns 129 through 144 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 Columns 145 through 160 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 161 through 176 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 Columns 177 through 192 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 193 through 208 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 Columns 209 through 224 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 225 through 240 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 241 through 256 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 257 through 272 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 273 through 288 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 289 through 304 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 305 through 320 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 Columns 321 through 336 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 Columns 337 through 352 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 Columns 353 through 368 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 369 through 384 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 Columns 385 through 400 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 Columns 401 through 416 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 417 through 432 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 Columns 433 through 448 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 449 through 464 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 Columns 465 through 480 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 Columns 481 through 496 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Columns 497 through 500 0 0 0 0

### Community Treasure Hunt

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

Start Hunting!