ฉันใช้เวลาทั้งวันพยายามทำให้สิ่งที่ดูเหมือนจะเป็นเรื่องง่ายมาก ฉันต้องสร้าง 300 'สุ่ม' วนเวียนซึ่งตัวเลข 1,2,3 และ 4 ทั้งหมดปรากฏ 12 ครั้ง แต่ไม่เคยใช้หมายเลขเดียวกันสองครั้งในแถว '/ ติดต่อกัน
ความพยายามที่ดีที่สุดของฉัน (ฉันเดา) คือ:
มีตัวอย่าง R 48 รายการโดยไม่มีการเปลี่ยนทดสอบว่ามีค่าต่อเนื่องเป็น rle หรือไม่จากนั้นใช้เฉพาะลำดับที่ไม่มีค่าติดต่อกัน ปัญหา: แทบจะไม่มีการสุ่มลำดับที่ตรงกับเกณฑ์นี้ดังนั้นจึงต้องใช้ตลอดไป
มี R สร้างลำดับโดยไม่มีค่าต่อเนื่อง (ดูรหัส)
pop<-rep(1:4,12)
y=c()
while(length(y)!=48)
{
y= c(y,sample(pop,48-length(y),replace=F))
y=y[!c(FALSE, diff(y) == 0)]
}
ปัญหา: สิ่งนี้สร้างลำดับที่มีตัวเลขแตกต่างกันของแต่ละค่า จากนั้นฉันพยายามใช้เฉพาะลำดับเหล่านั้นที่มี 12 ค่าแต่ละค่าเท่านั้น แต่นั่นทำให้ฉันกลับมาที่ปัญหา 1: ใช้เวลาตลอดไป
ต้องมีวิธีง่าย ๆ ในการทำเช่นนี้ใช่มั้ย ความช่วยเหลือใด ๆ ที่ชื่นชมอย่างมาก!