組織乙個十人活動,兩兩都能見面交談,怎樣安排才最有效?

時間 2021-07-11 17:04:05

1樓:大灰灰老師

class

Arrangement

(object

):def

__init__

(self

,players

):if

len(

players)%

2:self

._players

=players+[

'NOBODY'

]else

:self

._players

=players

.copy

()self._n

=len

(self

._players

)self

._original_order

=self

._players

.copy

()self

._exhausted

=False

def__str__

(self

):return'\n

'.join

('{}: {}'

.format(a

,b)fora,

binzip(

self

._players[0

:self._n

//2],self

._players

[:self._n

//2-1

:-1]))

def__iter__

(self

):return

self

def__next__

(self

):if

self

._exhausted

:raise

StopIteration

self

._players=[

self

._players[0

],self

._players[-

1]]+self

._players[1

:-1]

ifall(a

==bfora,b

inzip

(self

._players

,self

._original_order

)):self

._exhausted

=True

return

self

defreset

(self

):self

._exhausted

=False

self

._players

=self

._original_order

.copy

()if

__name__

=='__main__':p

=['Spider-Man'

,'Iron Man'

,'Captain America'

,'Thor'

,'Scarlet Witch'

,'Black Widow'

,'Hulk'

,'Vision'

,'Wolverine'

,'Hawkeye'

]arr

=Arrangement(p

)fork,

ainenumerate

(arr

):print

('-= Round

{}=-

\n{}\n'

.format(k

+1,a))

Python如何使乙個列表裡的元素兩兩相加,例如a 1,2,3,4 ,使裡面數字兩兩相加?

參考python cookbook 4.9章 排列組合的迭代 from itertools import combinationsa 1,2,3,4 result list for c in combinations a,2 也許 a 1,2,3,4 result foriina forjin a ...

化學方程式中的粒子如果只有乙個,那麼兩兩反應會生成半個粒子嗎?

程子醬 不會生成半個粒子。反應方程式實際是許多微觀變化的和,所以方程式並不能體現體系中實際發生了什麼。而當我們關注微觀單分子的時候,這些過程就很重要了,我們稱這些微觀過程為反應機理。你這個思考實際是機理研究裡很重要的乙個問題,就是說乙個分子通過了怎麼樣的過渡態,怎麼樣的中間體,最終達到了產物。所以物...

大學女生三三兩兩或者乙個女生打籃球,除了發自內心的熱愛,一般基於什麼心理?

橘貓烏龜 打了三年球。剛開始大一大二真的毫不畏懼旁人目光,乙個人拿著球就往球館衝,籃球刷網的聲音是真的很動聽。除了出於內心的熱愛,還有 場地。學校裡那麼好的籃球室內館,有膠質地板還有燈光有籃網,幹嘛放著不用?回家就是水泥地,還沒籃網。責任。因為我們學院院隊會打籃球的女生就沒幾個,全靠那乙個主力得分。...