Submission #54864699
Source Code Expand
from scipy.sparse.csgraph import dijkstra
from scipy.sparse import csr_matrix
H, W, T = map(int, input().split())
S = [input() for _ in range(H)]
def canArrive(x):
    length, frm, to = [], [], []
    def path_append(fh, fw, th, tw):
        if S[th][tw] == '#':
            length.append(x)
        else:
            length.append(1)
        frm.append(fh * W + fw)
        to.append(th * W + tw)
    for h in range(H):
        for w in range(W - 1):
            path_append(h, w, h, w + 1)
            path_append(h, w + 1, h, w)
    for h in range(H - 1):
        for w in range(W):
            path_append(h, w, h + 1, w)
            path_append(h + 1, w, h, w)
    for h in range(H):
        for w in range(W):
            if S[h][w] == 'S':
                start = h * W + w
            elif S[h][w] == 'G':
                goal = h * W + w
    matr = csr_matrix((length, (frm, to)), shape=(H * W, H * W))
    return int(dijkstra(matr, indices=start)[goal]) <= T
l, r = 1, 10 ** 9
while r - l > 1:
    m = (l + r) // 2
    if canArrive(m):
        l = m
    else:
        r = m
print(l)
			Submission Info
| Submission Time | |
|---|---|
| Task | C - 壁抜け | 
| User | H3PO4 | 
| Language | Python (CPython 3.11.4) | 
| Score | 100 | 
| Code Size | 1148 Byte | 
| Status | AC | 
| Exec Time | 134 ms | 
| Memory | 45848 KiB | 
Judge Result
| Set Name | Sample | Subtask1 | Subtask2 | Subtask3 | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 40 / 40 | 30 / 30 | 30 / 30 | ||||||||
| Status | 
 | 
 | 
 | 
 | 
| Set Name | Test Cases | 
|---|---|
| Sample | subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt | 
| Subtask1 | subtask0_sample_01.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt | 
| Subtask2 | subtask0_sample_01.txt, subtask0_sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask2_16.txt, subtask2_17.txt, subtask2_18.txt, subtask2_19.txt, subtask2_20.txt, subtask2_21.txt, subtask2_22.txt, subtask2_23.txt, subtask2_24.txt, subtask2_25.txt, subtask2_26.txt, subtask2_27.txt, subtask2_28.txt, subtask2_29.txt, subtask2_30.txt, subtask2_31.txt, subtask2_32.txt, subtask2_33.txt, subtask2_34.txt, subtask2_35.txt, subtask2_36.txt, subtask2_37.txt, subtask2_38.txt, subtask2_39.txt, subtask2_40.txt | 
| Subtask3 | subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask2_16.txt, subtask2_17.txt, subtask2_18.txt, subtask2_19.txt, subtask2_20.txt, subtask2_21.txt, subtask2_22.txt, subtask2_23.txt, subtask2_24.txt, subtask2_25.txt, subtask2_26.txt, subtask2_27.txt, subtask2_28.txt, subtask2_29.txt, subtask2_30.txt, subtask2_31.txt, subtask2_32.txt, subtask2_33.txt, subtask2_34.txt, subtask2_35.txt, subtask2_36.txt, subtask2_37.txt, subtask2_38.txt, subtask2_39.txt, subtask2_40.txt, subtask3_41.txt, subtask3_42.txt, subtask3_43.txt, subtask3_44.txt, subtask3_45.txt, subtask3_46.txt, subtask3_47.txt, subtask3_48.txt, subtask3_49.txt, subtask3_50.txt, subtask3_51.txt, subtask3_52.txt, subtask3_53.txt, subtask3_54.txt, subtask3_55.txt, subtask3_56.txt, subtask3_57.txt, subtask3_58.txt, subtask3_59.txt, subtask3_60.txt, subtask3_61.txt, subtask3_62.txt, subtask3_63.txt, subtask3_64.txt, subtask3_65.txt | 
| Case Name | Status | Exec Time | Memory | 
|---|---|---|---|
| subtask0_sample_01.txt | AC | 134 ms | 45668 KiB | 
| subtask0_sample_02.txt | AC | 126 ms | 45640 KiB | 
| subtask0_sample_03.txt | AC | 126 ms | 45712 KiB | 
| subtask1_01.txt | AC | 126 ms | 45580 KiB | 
| subtask1_02.txt | AC | 125 ms | 45280 KiB | 
| subtask1_03.txt | AC | 125 ms | 45684 KiB | 
| subtask1_04.txt | AC | 126 ms | 45220 KiB | 
| subtask1_05.txt | AC | 125 ms | 45640 KiB | 
| subtask1_06.txt | AC | 126 ms | 45700 KiB | 
| subtask1_07.txt | AC | 129 ms | 45484 KiB | 
| subtask1_08.txt | AC | 127 ms | 45632 KiB | 
| subtask1_09.txt | AC | 126 ms | 45668 KiB | 
| subtask1_10.txt | AC | 126 ms | 45220 KiB | 
| subtask1_11.txt | AC | 127 ms | 45656 KiB | 
| subtask1_12.txt | AC | 126 ms | 45504 KiB | 
| subtask1_13.txt | AC | 126 ms | 45524 KiB | 
| subtask1_14.txt | AC | 127 ms | 45648 KiB | 
| subtask1_15.txt | AC | 126 ms | 45472 KiB | 
| subtask2_16.txt | AC | 130 ms | 45760 KiB | 
| subtask2_17.txt | AC | 130 ms | 45388 KiB | 
| subtask2_18.txt | AC | 130 ms | 45548 KiB | 
| subtask2_19.txt | AC | 131 ms | 45772 KiB | 
| subtask2_20.txt | AC | 131 ms | 45328 KiB | 
| subtask2_21.txt | AC | 129 ms | 45760 KiB | 
| subtask2_22.txt | AC | 130 ms | 45760 KiB | 
| subtask2_23.txt | AC | 130 ms | 45712 KiB | 
| subtask2_24.txt | AC | 130 ms | 45764 KiB | 
| subtask2_25.txt | AC | 129 ms | 45316 KiB | 
| subtask2_26.txt | AC | 128 ms | 45520 KiB | 
| subtask2_27.txt | AC | 127 ms | 45668 KiB | 
| subtask2_28.txt | AC | 127 ms | 45476 KiB | 
| subtask2_29.txt | AC | 126 ms | 45620 KiB | 
| subtask2_30.txt | AC | 126 ms | 45492 KiB | 
| subtask2_31.txt | AC | 126 ms | 45588 KiB | 
| subtask2_32.txt | AC | 128 ms | 45640 KiB | 
| subtask2_33.txt | AC | 132 ms | 45740 KiB | 
| subtask2_34.txt | AC | 132 ms | 45596 KiB | 
| subtask2_35.txt | AC | 130 ms | 45672 KiB | 
| subtask2_36.txt | AC | 130 ms | 45400 KiB | 
| subtask2_37.txt | AC | 129 ms | 45536 KiB | 
| subtask2_38.txt | AC | 129 ms | 45672 KiB | 
| subtask2_39.txt | AC | 129 ms | 45732 KiB | 
| subtask2_40.txt | AC | 128 ms | 45656 KiB | 
| subtask3_41.txt | AC | 128 ms | 45836 KiB | 
| subtask3_42.txt | AC | 128 ms | 45640 KiB | 
| subtask3_43.txt | AC | 128 ms | 45724 KiB | 
| subtask3_44.txt | AC | 128 ms | 45620 KiB | 
| subtask3_45.txt | AC | 128 ms | 45772 KiB | 
| subtask3_46.txt | AC | 130 ms | 45616 KiB | 
| subtask3_47.txt | AC | 128 ms | 45624 KiB | 
| subtask3_48.txt | AC | 128 ms | 45580 KiB | 
| subtask3_49.txt | AC | 128 ms | 45848 KiB | 
| subtask3_50.txt | AC | 126 ms | 45560 KiB | 
| subtask3_51.txt | AC | 127 ms | 45780 KiB | 
| subtask3_52.txt | AC | 127 ms | 45604 KiB | 
| subtask3_53.txt | AC | 127 ms | 45444 KiB | 
| subtask3_54.txt | AC | 125 ms | 45524 KiB | 
| subtask3_55.txt | AC | 125 ms | 45316 KiB | 
| subtask3_56.txt | AC | 126 ms | 45756 KiB | 
| subtask3_57.txt | AC | 125 ms | 45636 KiB | 
| subtask3_58.txt | AC | 130 ms | 45648 KiB | 
| subtask3_59.txt | AC | 129 ms | 45516 KiB | 
| subtask3_60.txt | AC | 130 ms | 45548 KiB | 
| subtask3_61.txt | AC | 129 ms | 45456 KiB | 
| subtask3_62.txt | AC | 129 ms | 45700 KiB | 
| subtask3_63.txt | AC | 129 ms | 45772 KiB | 
| subtask3_64.txt | AC | 129 ms | 45456 KiB | 
| subtask3_65.txt | AC | 129 ms | 45548 KiB |