[理工] 環狀分類判斷式打法

作者: NTUgambler (二十世紀末的賭徒)   2018-04-16 12:45:05
今天有編號1~6的椅子環繞一圈
我要在上面擺3顆蘋果
如果擺放1號2號3號
簡記為{1,2,3}
今天我想把相似的擺法 分在同一群
意即{1,2,3}和{2,3,4}擺法相似 放置同一群
我的判斷式該如何描寫呢?
我的想法是{x1,x2,x3} {y1,y2,y3}
若|x2-x1|=|y2-y1|且|x3-x2|=|y3-y2| 則能分到同一群
但是好像就無法處理頭尾相鄰的部分
意即{1,2,3}和{1,2,6}其實是要同一群的
還有我{}的index都是由小排到大
請問我的判斷式要怎麼寫呢?
作者: Azlar911 (Azlar)   2018-04-16 13:00:00
module取餘數你的對應項相減是假設x1x2x3有順序 可是在取排列狀況的時候又由小到大 這樣就要可能的排列都試過x1x2x3 和 y1y2y3 , y2y3y1 , y3y1y2都比一次且距離取餘數
作者: outofyou   2018-04-17 01:54:00
取距離(x2-x1,x3-x2,d-x3+x1),再取維持環狀順序的距離最小優先的表示法,表示法相同則同一群。if has r, ((x1+r)%d,(x2+r)%d,(x3+r)%d) = (y1,y2,y3)

Links booklink

Contact Us: admin [ a t ] ucptt.com