| Task: | Niitty | 
| Sender: | Lelleri | 
| Submission time: | 2024-10-30 16:37:58 +0200 | 
| Language: | Python3 (PyPy3) | 
| Status: | READY | 
| Result: | 0 | 
| group | verdict | score | 
|---|---|---|
| #1 | WRONG ANSWER | 0 | 
| #2 | WRONG ANSWER | 0 | 
| #3 | WRONG ANSWER | 0 | 
| #4 | WRONG ANSWER | 0 | 
| #5 | WRONG ANSWER | 0 | 
| #6 | WRONG ANSWER | 0 | 
| test | verdict | time | group | |
|---|---|---|---|---|
| #1 | WRONG ANSWER | 0.04 s | 1, 2, 3, 4, 5, 6 | details | 
| #2 | WRONG ANSWER | 0.04 s | 1, 2, 3, 4, 5, 6 | details | 
| #3 | ACCEPTED | 0.04 s | 1, 2, 3, 4, 5, 6 | details | 
| #4 | ACCEPTED | 0.04 s | 1, 2, 3, 4, 5, 6 | details | 
| #5 | ACCEPTED | 0.04 s | 1, 2, 3, 4, 5, 6 | details | 
| #6 | WRONG ANSWER | 0.04 s | 2, 3, 4, 5, 6 | details | 
| #7 | WRONG ANSWER | 0.05 s | 2, 3, 4, 5, 6 | details | 
| #8 | ACCEPTED | 0.04 s | 2, 3, 4, 5, 6 | details | 
| #9 | WRONG ANSWER | 0.04 s | 2, 3, 4, 5, 6 | details | 
| #10 | WRONG ANSWER | 0.05 s | 3, 4, 5, 6 | details | 
| #11 | WRONG ANSWER | 0.06 s | 3, 4, 5, 6 | details | 
| #12 | ACCEPTED | 0.06 s | 3, 4, 5, 6 | details | 
| #13 | WRONG ANSWER | 0.06 s | 3, 4, 5, 6 | details | 
| #14 | WRONG ANSWER | 0.08 s | 4, 5, 6 | details | 
| #15 | WRONG ANSWER | 0.06 s | 4, 5, 6 | details | 
| #16 | ACCEPTED | 0.17 s | 4, 5, 6 | details | 
| #17 | WRONG ANSWER | 0.17 s | 4, 5, 6 | details | 
| #18 | WRONG ANSWER | 0.84 s | 5, 6 | details | 
| #19 | WRONG ANSWER | 0.16 s | 5, 6 | details | 
| #20 | TIME LIMIT EXCEEDED | -- | 5, 6 | details | 
| #21 | TIME LIMIT EXCEEDED | -- | 5, 6 | details | 
| #22 | TIME LIMIT EXCEEDED | -- | 6 | details | 
| #23 | TIME LIMIT EXCEEDED | -- | 6 | details | 
| #24 | TIME LIMIT EXCEEDED | -- | 6 | details | 
| #25 | TIME LIMIT EXCEEDED | -- | 6 | details | 
Code
import math
n = int(input())
field =  [[l for l in input()] for _ in range(n)]
# Creating coordinate map
species_coordinate_map = {}
for y, row in enumerate(field):
    for x, point in enumerate(row):
        species_coordinate_map[point] = species_coordinate_map.get(point, []) + [(x, y)]
# Finding limits
field_dimensions = {"left": n-1, "right": 0, "top": n-1, "bottom": 0}
species_limits = {}
count_all = True
for key in species_coordinate_map.keys():
    x_coords = [x for x, y in species_coordinate_map[key]]
    y_coords = [y for x, y in species_coordinate_map[key]]
    if(field_dimensions["left"] > max(x_coords)):
        field_dimensions["left"] = max(x_coords)
        count_all = False
    if(field_dimensions["right"] < min(x_coords)):
        field_dimensions["right"] = min(x_coords)
        count_all = False
    if(field_dimensions["top"] > max(y_coords)):
        field_dimensions["top"] = max(y_coords)
        count_all = False
    if(field_dimensions["bottom"] < min(y_coords)):
        field_dimensions["bottom"] = min(y_coords)
        count_all = False
    
if(count_all):
    field_dimensions = {"left": 0, "right": n, "top": 0, "bottom": n}
    v = field_dimensions["right"] - field_dimensions["left"] + 1
    h = field_dimensions["bottom"] - field_dimensions["top"] + 1
    print(int(h*(h-1)*v*(v-1)/4))
    exit()
field_dimensions["right"] = n-field_dimensions["right"]
field_dimensions["bottom"] = n-field_dimensions["bottom"]
field_dimensions["left"] = field_dimensions["left"]+1
field_dimensions["top"] = field_dimensions["top"]+1
left_bottom_corner_possibilites = field_dimensions["left"] * field_dimensions["bottom"]
right_top_corner_possibilites = field_dimensions["right"] * field_dimensions["top"]
print(left_bottom_corner_possibilites*right_top_corner_possibilites)
Test details
Test 1
Group: 1, 2, 3, 4, 5, 6
Verdict: WRONG ANSWER
| input | 
|---|
| 10 TNCTNPNTPC NPPNTNTPTP NTNTTCNTCT NPCPNPPNTT ...  | 
| correct output | 
|---|
| 2035 | 
| user output | 
|---|
| 3025 | 
Test 2
Group: 1, 2, 3, 4, 5, 6
Verdict: WRONG ANSWER
| input | 
|---|
| 10 NFWQLWNWYS DZOQJVXFPJ CNHXPXMCQD QRTBVNLTQC ...  | 
| correct output | 
|---|
| 9 | 
| user output | 
|---|
| 12 | 
Test 3
Group: 1, 2, 3, 4, 5, 6
Verdict: ACCEPTED
| input | 
|---|
| 10 XXXXXXXXXX XXXXXXXXXX XXXXXXXXXX XXXXXXXXXX ...  | 
| correct output | 
|---|
| 3025 | 
| user output | 
|---|
| 3025 | 
Test 4
Group: 1, 2, 3, 4, 5, 6
Verdict: ACCEPTED
| input | 
|---|
| 10 FFFFFFFFFF FFFFFCFFFF FFFFFFJFFF FFFFFFFFFF ...  | 
| correct output | 
|---|
| 12 | 
| user output | 
|---|
| 12 | 
Test 5
Group: 1, 2, 3, 4, 5, 6
Verdict: ACCEPTED
| input | 
|---|
| 1 X  | 
| correct output | 
|---|
| 1 | 
| user output | 
|---|
| 1 | 
Test 6
Group: 2, 3, 4, 5, 6
Verdict: WRONG ANSWER
| input | 
|---|
| 20 BBCBUBOUOBBCUUBBCOUO BOUCOOCUBCOOOCOBOCUO UCCUUUOBCOCBCBUBUCOO BUOBUCUCUOOBCOOUBUOO ...  | 
| correct output | 
|---|
| 38724 | 
| user output | 
|---|
| 44100 | 
Test 7
Group: 2, 3, 4, 5, 6
Verdict: WRONG ANSWER
| input | 
|---|
| 20 CBGLSHGZHYZDWBNDBJUG SMUXOJQYPXZDTMJUIWOJ XIDSTNBGHKRKOVUVMINB MTQGCFRUHQKALXRNCQGS ...  | 
| correct output | 
|---|
| 8334 | 
| user output | 
|---|
| 48384 | 
Test 8
Group: 2, 3, 4, 5, 6
Verdict: ACCEPTED
| input | 
|---|
| 20 KKKKKKKKKKKKKKKKKKKK KKKKKKKKKKKKKKKKKKKK KKKKKKKKKKKKKKKKKKKK KKKKKKKKKKKKKKKKKKKK ...  | 
| correct output | 
|---|
| 44100 | 
| user output | 
|---|
| 44100 | 
Test 9
Group: 2, 3, 4, 5, 6
Verdict: WRONG ANSWER
| input | 
|---|
| 20 AAAAAAAAXAAAAAAAAAAA AAAWAAAAAAAAAAAAAOAA AAAAAAAAAAAAAAAAAPAA AAAAAAAAKAAAAAAAAAAZ ...  | 
| correct output | 
|---|
| 18 | 
| user output | 
|---|
| 24 | 
Test 10
Group: 3, 4, 5, 6
Verdict: WRONG ANSWER
| input | 
|---|
| 50 GRGREEEGREGXRXXEGXXREXGRRRGRRR...  | 
| correct output | 
|---|
| 1584665 | 
| user output | 
|---|
| 1625625 | 
Test 11
Group: 3, 4, 5, 6
Verdict: WRONG ANSWER
| input | 
|---|
| 50 AITIISJUHCCRZNKSDCNQKYSQRINFWJ...  | 
| correct output | 
|---|
| 1077746 | 
| user output | 
|---|
| 5647152 | 
Test 12
Group: 3, 4, 5, 6
Verdict: ACCEPTED
| input | 
|---|
| 50 OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO...  | 
| correct output | 
|---|
| 1625625 | 
| user output | 
|---|
| 1625625 | 
Test 13
Group: 3, 4, 5, 6
Verdict: WRONG ANSWER
| input | 
|---|
| 50 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF...  | 
| correct output | 
|---|
| 1680 | 
| user output | 
|---|
| 3024 | 
Test 14
Group: 4, 5, 6
Verdict: WRONG ANSWER
| input | 
|---|
| 100 NNCMDCDDCCNNNDNCMMNCDCDCCDCDNM...  | 
| correct output | 
|---|
| 25325366 | 
| user output | 
|---|
| 25502500 | 
Test 15
Group: 4, 5, 6
Verdict: WRONG ANSWER
| input | 
|---|
| 100 LIMQQIHASECROEVILNVULGWZJPPKOG...  | 
| correct output | 
|---|
| 22342463 | 
| user output | 
|---|
| 25502500 | 
Test 16
Group: 4, 5, 6
Verdict: ACCEPTED
| input | 
|---|
| 100 TTTTTTTTTTTTTTTTTTTTTTTTTTTTTT...  | 
| correct output | 
|---|
| 25502500 | 
| user output | 
|---|
| 25502500 | 
Test 17
Group: 4, 5, 6
Verdict: WRONG ANSWER
| input | 
|---|
| 100 QXQQQQQQQQQQQQQQQQQQQQQQQQQQQQ...  | 
| correct output | 
|---|
| 25650 | 
| user output | 
|---|
| 150696 | 
Test 18
Group: 5, 6
Verdict: WRONG ANSWER
| input | 
|---|
| 200 NAANANMMKNKKAKMKMAKNKMNKMMNNAA...  | 
| correct output | 
|---|
| 403292767 | 
| user output | 
|---|
| 404010000 | 
Test 19
Group: 5, 6
Verdict: WRONG ANSWER
| input | 
|---|
| 200 OMYWATTLURKQPTKEFMGGYAOONXWVSC...  | 
| correct output | 
|---|
| 388111321 | 
| user output | 
|---|
| 404010000 | 
Test 20
Group: 5, 6
Verdict: TIME LIMIT EXCEEDED
| input | 
|---|
| 200 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC...  | 
| correct output | 
|---|
| 404010000 | 
| user output | 
|---|
| (empty) | 
Test 21
Group: 5, 6
Verdict: TIME LIMIT EXCEEDED
| input | 
|---|
| 200 LLLLLLLLLLLLLLLLLHLLLLLLLLLLLL...  | 
| correct output | 
|---|
| 14159445 | 
| user output | 
|---|
| (empty) | 
Test 22
Group: 6
Verdict: TIME LIMIT EXCEEDED
| input | 
|---|
| 500 VVHWVUHVHUWWWVUUUWVUUHUUWHWUVW...  | 
| correct output | 
|---|
| 15683003812 | 
| user output | 
|---|
| (empty) | 
Test 23
Group: 6
Verdict: TIME LIMIT EXCEEDED
| input | 
|---|
| 500 OIMZGEQSBMBDSDXSWRFNKSGFEBBTJE...  | 
| correct output | 
|---|
| 15575906951 | 
| user output | 
|---|
| (empty) | 
Test 24
Group: 6
Verdict: TIME LIMIT EXCEEDED
| input | 
|---|
| 500 IIIIIIIIIIIIIIIIIIIIIIIIIIIIII...  | 
| correct output | 
|---|
| 15687562500 | 
| user output | 
|---|
| (empty) | 
Test 25
Group: 6
Verdict: TIME LIMIT EXCEEDED
| input | 
|---|
| 500 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWW...  | 
| correct output | 
|---|
| 3058970930 | 
| user output | 
|---|
| (empty) | 
