182142025-10-14 09:57:25birozsVáltakozó (75 pont)python3Wrong answer 27/75600ms4304 KiB
from collections import OrderedDict
T = input()
N = len(T)
if len(T) == 1:
    print(T)
else:
    D = {}
    for k in T:
        if k not in D:
            D[k] = 1
        else:
            D[k] += 1
    D = OrderedDict(sorted(D.items()))
    lehet = True
    for k,db in D.items():
        if (N % 2 == 0 and db > N // 2) or (N % 2 == 1 and db > N // 2 + 1):
            print(-1)
            lehet = False
    if lehet:
        megoldas = "*"
        for i in range(1,N+1):
            hosszu = False
            for k,db in D.items():
                if db > 0 and k != megoldas[i-1] and  db >= (N-i) // 2 +1:
                    megoldas += k
                    D[k] -= 1
                    hosszu = True
                    break
            if not hosszu:
                for k,db in D.items():
                    if db > 0 and k != megoldas[i-1]:
                        megoldas += k
                        D[k] -= 1
                        break
        print(megoldas[1:])                       

    
SubtaskSumTestVerdictTimeMemory
base27/75
1Wrong answer0/018ms3380 KiB
2Wrong answer0/029ms3396 KiB
3Partially correct2/318ms3372 KiB
4Accepted3/318ms3376 KiB
5Partially correct2/319ms3380 KiB
6Accepted3/319ms3380 KiB
7Accepted3/354ms3632 KiB
8Time limit exceeded0/3578ms4132 KiB
9Accepted3/365ms4064 KiB
10Accepted3/359ms4076 KiB
11Partially correct2/339ms3512 KiB
12Partially correct2/341ms3384 KiB
13Partially correct2/339ms3380 KiB
14Partially correct2/325ms3356 KiB
15Time limit exceeded0/3586ms4076 KiB
16Time limit exceeded0/3600ms4076 KiB
17Time limit exceeded0/3598ms4080 KiB
18Time limit exceeded0/3579ms4076 KiB
19Time limit exceeded0/3588ms4076 KiB
20Time limit exceeded0/3586ms4304 KiB
21Time limit exceeded0/3586ms4076 KiB
22Time limit exceeded0/6580ms4136 KiB
23Time limit exceeded0/6584ms4148 KiB
24Time limit exceeded0/6598ms4180 KiB