summaryrefslogtreecommitdiff
path: root/buffet_lotterie2.py
blob: 86205bf58f6c471d5c97a394448cf5da1e299a2a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/usr/bin/env python3

from math import floor

Anzahl_teilnehmer = 6
Silben = ['In', 'for', 'ma', 'tik', 'kann', 'uns', 'wei', 'sen', 'wer', 'als', 'Nächs', 'ter', 'kommt', 'zum', 'Spei', 'sen']

teilnehmer = Anzahl_teilnehmer
fehlt_noch = (len(Silben) - 1) % Anzahl_teilnehmer
runden = 0 # DEBUG
einfluss = 0
offset = 0
while fehlt_noch > 0:
    runden += 1
    e = floor((len(Silben)) / teilnehmer) # e Runden vergehen, bis einer gehen darf
    offset = ((len(Silben) + offset) % teilnehmer) # nach e Runden fängt Teilnehmer Nummer `offset` an 
    teilnehmer -= 1

    einfluss += e # Geburtstagskind kann e-mal "den Zeiger nach vorne pushen"
    fehlt_noch = teilnehmer - offset
    print(str(e) + " Runden " + " offset " + str(offset))
    if False: #e != 0:
        print(fehlt_noch)
        if not fehlt_noch > einfluss:
            print("Das Geburtstagskind muss erst " + str(einfluss - fehlt_noch) + "-mal zwei Silben und dann " + str(fehlt_noch) + "-mal eine Silbe sagen, bis es dran ist.")
            break

print(runden)

# Das Geburtstagskind kommt nach `j` Runden `einfluss`-mal dran