| Task: | Kertoma | 
| Sender: | Erikoisjaakari | 
| Submission time: | 2022-10-31 20:09:34 +0200 | 
| Language: | Python3 (CPython3) | 
| Status: | READY | 
| Result: | 0 | 
| group | verdict | score | 
|---|---|---|
| #1 | WRONG ANSWER | 0 | 
| #2 | WRONG ANSWER | 0 | 
| #3 | WRONG ANSWER | 0 | 
| test | verdict | time | group | |
|---|---|---|---|---|
| #1 | ACCEPTED | 0.02 s | 1, 2, 3 | details | 
| #2 | ACCEPTED | 0.02 s | 1, 2, 3 | details | 
| #3 | ACCEPTED | 0.02 s | 1, 2, 3 | details | 
| #4 | ACCEPTED | 0.02 s | 1, 2, 3 | details | 
| #5 | ACCEPTED | 0.02 s | 1, 2, 3 | details | 
| #6 | WRONG ANSWER | 0.02 s | 1, 2, 3 | details | 
| #7 | RUNTIME ERROR | 0.02 s | 2, 3 | details | 
| #8 | RUNTIME ERROR | 0.02 s | 2, 3 | details | 
| #9 | RUNTIME ERROR | 0.02 s | 2, 3 | details | 
| #10 | RUNTIME ERROR | 0.02 s | 2, 3 | details | 
| #11 | RUNTIME ERROR | 0.02 s | 3 | details | 
| #12 | RUNTIME ERROR | 0.02 s | 3 | details | 
| #13 | RUNTIME ERROR | 0.04 s | 3 | details | 
| #14 | RUNTIME ERROR | 0.06 s | 3 | details | 
| #15 | RUNTIME ERROR | 0.09 s | 3 | details | 
| #16 | RUNTIME ERROR | 0.10 s | 3 | details | 
Code
import math
# numerot kivaksi listaksi:
#  1 1 1 0 0 0 0 0 0 0 -> [0, 1, 2]
maarat = input().split()
numerot = []
for luku, maara in enumerate(maarat):
    maara = int(maara)
    for i in range(maara):
        numerot.append(luku) # ---tyhmä tyypitys juttu, kannattaa poistaa jotta voi käyttää esim. summaa
numerot.sort()
def unfactorial(luku):
    jakaja = 2
    while luku > 1:
        luku = luku / jakaja
        jakaja += 1
    return jakaja-1
# check from array
factoriallens = [1, 1, 1, 2, 3, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 18, 19, 20, 22, 23, 24, 26, 27, 29, 30, 31, 33, 34, 36, 37, 39, 41, 42, 44, 45, 47, 48, 50, 52, 53, 55, 57, 58, 60, 62, 63, 65, 67, 68, 70, 72, 74, 75, 77, 79, 81, 82, 84, 86, 88, 90, 91, 93, 95, 97, 99, 101, 102, 104, 106, 108, 110, 112, 114, 116, 117, 119, 121, 123, 125, 127, 129, 131, 133, 135, 137, 139, 141, 143, 145, 147, 149, 150, 152, 154, 156, 158, 160, 162, 164, 167, 169, 171, 173, 175, 177, 179, 181, 183, 185, 187, 189, 191, 193, 195, 197, 199, 201, 203, 206, 208, 210, 212, 214, 216, 218, 220, 222, 225, 227, 229, 231, 233, 235, 237, 239, 242, 244, 246, 248, 250, 252, 255, 257, 259, 261]
x = len(numerot)
for idx, length in enumerate(factoriallens):
    if length == x:
        possible = idx
# brute the answer
for i in range(possible-20,possible+20):
    if i < 2:
        continue
    x = math.factorial(i)
    # https://stackoverflow.com/questions/21270320/turn-a-single-number-into-single-digits-python
    test = [(x//(10**y))%10 for y in range(math.ceil(math.log(x, 10))-1, -1, -1)]
    test.sort()
    if numerot == test:
        print(unfactorial(x))
        break
# bruteforce
# test_int = 10
# while True:
#     x = math.factorial(test_int)
#     # https://stackoverflow.com/questions/21270320/turn-a-single-number-into-single-digits-python
#     test = [(x//(10**y))%10 for y in range(math.ceil(math.log(x, 10))-1, -1, -1)]
#     #test.sort()
#     testisumma = sum(test)
#     # print(test)
#     # some binary searching
#     print(test_int)
#     print(numeroidensumma,testisumma)
#     if numeroidensumma == testisumma:
#         print(unfactorial(x))
#         break
#     elif testisumma > numeroidensumma:
#         test_int += 10
#         print("suurempi")
#     elif testisumma < numeroidensumma:
#         test_int -= 1
#         print("pienempi")
    # if numerot == test:
    #     pass
    #     # print(x)
    #     # print(unfactorial(x))
    #     # break
Test details
Test 1
Group: 1, 2, 3
Verdict: ACCEPTED
| input | 
|---|
| 0 0 1 0 0 0 0 0 0 0 | 
| correct output | 
|---|
| 2 | 
| user output | 
|---|
| 2 | 
Test 2
Group: 1, 2, 3
Verdict: ACCEPTED
| input | 
|---|
| 0 0 0 0 0 0 1 0 0 0 | 
| correct output | 
|---|
| 3 | 
| user output | 
|---|
| 3 | 
Test 3
Group: 1, 2, 3
Verdict: ACCEPTED
| input | 
|---|
| 0 0 1 0 1 0 0 0 0 0 | 
| correct output | 
|---|
| 4 | 
| user output | 
|---|
| 4 | 
Test 4
Group: 1, 2, 3
Verdict: ACCEPTED
| input | 
|---|
| 2 0 1 1 0 0 1 0 2 0 | 
| correct output | 
|---|
| 10 | 
| user output | 
|---|
| 10 | 
Test 5
Group: 1, 2, 3
Verdict: ACCEPTED
| input | 
|---|
| 9 3 1 1 2 2 3 1 6 1 | 
| correct output | 
|---|
| 27 | 
| user output | 
|---|
| 27 | 
Test 6
Group: 1, 2, 3
Verdict: WRONG ANSWER
| input | 
|---|
| 10 4 3 4 3 2 2 4 3 7 | 
| correct output | 
|---|
| 36 | 
| user output | 
|---|
| 37 | 
Test 7
Group: 2, 3
Verdict: RUNTIME ERROR
| input | 
|---|
| 71 53 36 30 25 29 42 24 34 29 | 
| correct output | 
|---|
| 199 | 
| user output | 
|---|
| (empty) | 
Error:
Traceback (most recent call last):
  File "/box/input/code.py", line 34, in <module>
    f...Test 8
Group: 2, 3
Verdict: RUNTIME ERROR
| input | 
|---|
| 71 33 46 38 27 45 36 21 35 35 | 
| correct output | 
|---|
| 205 | 
| user output | 
|---|
| (empty) | 
Error:
Traceback (most recent call last):
  File "/box/input/code.py", line 34, in <module>
    f...Test 9
Group: 2, 3
Verdict: RUNTIME ERROR
| input | 
|---|
| 93 38 35 26 43 54 38 25 41 34 | 
| correct output | 
|---|
| 222 | 
| user output | 
|---|
| (empty) | 
Error:
Traceback (most recent call last):
  File "/box/input/code.py", line 34, in <module>
    f...Test 10
Group: 2, 3
Verdict: RUNTIME ERROR
| input | 
|---|
| 100 33 33 45 36 43 38 54 56 36 | 
| correct output | 
|---|
| 242 | 
| user output | 
|---|
| (empty) | 
Error:
Traceback (most recent call last):
  File "/box/input/code.py", line 34, in <module>
    f...Test 11
Group: 3
Verdict: RUNTIME ERROR
| input | 
|---|
| 3419 1797 1845 1849 1879 1791 ... | 
| correct output | 
|---|
| 5959 | 
| user output | 
|---|
| (empty) | 
Error:
Traceback (most recent call last):
  File "/box/input/code.py", line 34, in <module>
    f...Test 12
Group: 3
Verdict: RUNTIME ERROR
| input | 
|---|
| 4776 2695 2709 2781 2616 2753 ... | 
| correct output | 
|---|
| 8391 | 
| user output | 
|---|
| (empty) | 
Error:
Traceback (most recent call last):
  File "/box/input/code.py", line 34, in <module>
    f...Test 13
Group: 3
Verdict: RUNTIME ERROR
| input | 
|---|
| 20097 12282 12229 12214 12406 ... | 
| correct output | 
|---|
| 32001 | 
| user output | 
|---|
| (empty) | 
Error:
Traceback (most recent call last):
  File "/box/input/code.py", line 34, in <module>
    f...Test 14
Group: 3
Verdict: RUNTIME ERROR
| input | 
|---|
| 47934 29918 29878 29713 29984 ... | 
| correct output | 
|---|
| 71718 | 
| user output | 
|---|
| (empty) | 
Error:
Traceback (most recent call last):
  File "/box/input/code.py", line 34, in <module>
    f...Test 15
Group: 3
Verdict: RUNTIME ERROR
| input | 
|---|
| 84691 54156 54277 54533 54296 ... | 
| correct output | 
|---|
| 123123 | 
| user output | 
|---|
| (empty) | 
Error:
Traceback (most recent call last):
  File "/box/input/code.py", line 34, in <module>
    f...Test 16
Group: 3
Verdict: RUNTIME ERROR
| input | 
|---|
| 99098 63339 63878 64182 63904 ... | 
| correct output | 
|---|
| 142663 | 
| user output | 
|---|
| (empty) | 
Error:
Traceback (most recent call last):
  File "/box/input/code.py", line 34, in <module>
    f...