亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何實現一個數字隨機分成一個數組

如何實現一個數字隨機分成一個數組

aluckdog 2018-07-30 07:10:53
例如 一個數字100,怎么把100隨機分成一個數組,并且這個數組里的和是100,并且這個數組里的每個數字差都不會太大,比如100拆成10,20,15,20,5,30。數組和一定是int類型。求解。
查看完整描述

1 回答

?
慕勒3428872

TA貢獻1848條經驗 獲得超6個贊

設數字為N,和的范圍為1-N。

1-N之間是若干節點(位置),假設為a,b,c。

線的長度是N,N的長度=各個線段的和

也就是N=(N-c)+(c-b)+(b-a)+(a-0);

SO,可以得出a,b,c就是你要的三個數。

同理,你可以根據自己的需要改成a...n-1個節點,可以是三個數,也可以是四個數,可以隨機出一個1至(n-1)的數

“每個數字差都不會太大”,這個就得另外寫邏輯了,做減法判斷差,如果超過你的指定值,重新隨機,如此循環xx下(或者根據XX下選擇差最小的那組)

 

https://img1.sycdn.imooc.com//5b78d8a900010ab406580780.jpg

查看完整回答
反對 回復 2018-08-19
  • 1 回答
  • 0 關注
  • 1389 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號