CSES - Datatähti 2025 alku - Results
Submission details
Task:Kortit II
Sender:yoyoyoJ
Submission time:2024-11-09 22:48:58 +0200
Language:Python3 (PyPy3)
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
#30
#40
#50
Test results
testverdicttimegroup
#10.38 s1, 2, 3, 4, 5details
#20.37 s2, 3, 4, 5details
#30.38 s3, 4, 5details
#40.38 s4, 5details
#50.38 s5details
#60.38 s5details

Code

def permutations(elements):
    if len(elements) <= 1:
        yield elements
        return
    for perm in permutations(elements[1:]):
        for i in range(len(elements)):
            # nb elements[0:1] works in both string and list contexts
            yield perm[:i] + elements[0:1] + perm[i:]
def binomial(lst,n):
    if n==0:
        return [[]]
    l=[]
    for i in range(0,len(lst)):
        m=lst[i]
        remLst=lst[i+1:]
        for p in binomial(remLst,n-1):
            l.append([m]+p)
    return l
n, m ,k = 8, 5, 3
li=[]
q=[]
q.append(1)
for i in range(2,n):
    li.append(i)
    q.append(i)
q.append(n)

print(li,q)
am = list(binomial(li,m-1))
amm = list(binomial(li,m-1))
print(am)
print(amm)
amount=0
amou2=0
bg2=0
bg3=0
b5=0

for x in amm:
    x2=list(x)
    x2.insert(0, 1)
    print(x2)
    il = [i for i in q if i not in x2]
    print(il)
    for y in am:
        j = list(y)
        j.append(n)
        print(j)
        lis2 = list(permutations(j))
        il2 = list(permutations([i for i in q if i not in j]))
        print(il2)
        lis = list(x2)
        liss = [i for i in q if i not in lis]
        g=-1
        for u in lis2:
            g+=1
            for i in range(0, len(u)):
                if int(lis[i])<int(u[i]):
                    bg=1
                else:
                    bg=0
                    #print(0)
                    break
            print(lis, u,bg)
            if bg ==1:
                for i in il2:
                    for h in range(0,len(i)-1):
                        print(il[h]>i[h])
                        if il[h]>i[h]:
                            bg2=1
                        else:
                            bg2=0
                            #print(0)
                            break
                    bg3+=bg2
                    print(il,i)
            print(bg3)
            amount+=bg*bg3
            bg3=0
            amou2=0
print(amount)

Test details

Test 1

Group: 1, 2, 3, 4, 5

Verdict:

input
54
4 4 0
3 1 3
3 2 2
4 0 4
...

correct output
0
0
0
0
0
...

user output
[2, 3, 4, 5, 6, 7] [1, 2, 3, 4...

Test 2

Group: 2, 3, 4, 5

Verdict:

input
284
6 1 0
5 0 2
7 1 5
7 7 5
...

correct output
0
0
35280
0
36720
...

user output
[2, 3, 4, 5, 6, 7] [1, 2, 3, 4...

Test 3

Group: 3, 4, 5

Verdict:

input
841
19 3 12
19 19 13
19 7 13
20 11 15
...

correct output
40291066
0
0
0
0
...

user output
[2, 3, 4, 5, 6, 7] [1, 2, 3, 4...

Test 4

Group: 4, 5

Verdict:

input
1000
15 12 6
7 1 6
44 4 26
6 6 5
...

correct output
0
5040
494558320
0
340694548
...

user output
[2, 3, 4, 5, 6, 7] [1, 2, 3, 4...

Test 5

Group: 5

Verdict:

input
1000
892 638 599
966 429 655
1353 576 1140
1403 381 910
...

correct output
0
0
0
249098285
0
...

user output
[2, 3, 4, 5, 6, 7] [1, 2, 3, 4...

Test 6

Group: 5

Verdict:

input
1000
2000 1107 508
2000 1372 249
2000 588 65
2000 1739 78
...

correct output
750840601
678722180
744501884
159164549
868115056
...

user output
[2, 3, 4, 5, 6, 7] [1, 2, 3, 4...