Consider a loop of string with unit length. Take n cuts independently and randomly along the string, what is the expected length of the smallest and the largest piece?
1 次查看(过去 30 天)
显示 更早的评论
This is what I did.
The probability is (1+(1-n)x)^n
So, expected value of x is it integral for x varies from 0 to 1/n which evaluates to 1/n^2
If this is right how should I write the code?
7 个评论
回答(1 个)
Are Mjaavatten
2016-2-8
Your question is not very clear. The code below is an answer to: How can I code a test of this result?
N=100000; % Number of samples
n=8; % Number of cuts
d = zeros(N,n); % Allocate space for results
for i = 1:N
a = sort(rand(1,n)); % Draw random cut poins and distribute them along the string
b = [a(end)-1,a]; % Join ends
d(i,:) = sort(diff(b)); % Sort the pieces by length
end
mean_lengths = mean(d); % mean_lengths(i) is the mean length of the i'th shortest piece
disp(mean_lengths);
2 个评论
Walter Roberson
2016-2-9
编辑:Walter Roberson
2016-2-9
mean_lengths(end) is the mean of the longest.
The shortest out of all of the runs is min(d(:)) and the longest out of all of the runs is max(d(:)) (those might occur on different runs.)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!