結果
| 問題 | 
                            No.748 yuki国のお財布事情
                             | 
                    
| コンテスト | |
| ユーザー | 
                             ckawatak
                         | 
                    
| 提出日時 | 2018-12-29 22:40:22 | 
| 言語 | Python3  (3.13.1 + numpy 2.2.1 + scipy 1.14.1)  | 
                    
| 結果 | 
                             
                                AC
                                 
                             
                            
                         | 
                    
| 実行時間 | 841 ms / 2,000 ms | 
| コード長 | 1,108 bytes | 
| コンパイル時間 | 99 ms | 
| コンパイル使用メモリ | 12,672 KB | 
| 実行使用メモリ | 34,908 KB | 
| 最終ジャッジ日時 | 2024-10-02 11:51:42 | 
| 合計ジャッジ時間 | 10,036 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge3 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 3 | 
| other | AC * 26 | 
ソースコード
parent = []
rank = []
edges = []
def init(n):
    for i in range(n):
        parent.append(i)
        rank.append(0)
def find(x):
    if parent[x] == x:
        return x
    else:
        parent[x] = find(parent[x])
        return parent[x]
        
def unite(x, y):
    x = find(x)
    y = find(y)
    if rank[x] < rank[y]:
        parent[x] = y
    else:
        parent[y] = x
        if rank[x] == rank[y]:
            rank[x] = rank[x] + 1
def same(x, y):
    return find(x) == find(y)
def kruskal(e):
    edges.sort()
    cost = 0
    for i in range(e):
        if not same(edges[i][1], edges[i][2]):
            unite(edges[i][1], edges[i][2])
            cost = cost + edges[i][0]
    return cost
N,M,K = list(map(int, input().split(' ')))
a = [0 for _ in range(10**5)]
b = [0 for _ in range(10**5)]
c = [0 for _ in range(10**5)]
for i in range(M):
    a[i], b[i], c[i] = list(map(int, input().split(' ')))
    edges.append((c[i], a[i], b[i]))
cost = sum(c)
init(N+1)
for i in range(K):
    e = int(input())
    e = e - 1
    cost = cost - c[e]
    unite(a[e], b[e])
print(cost - kruskal(M))
            
            
            
        
            
ckawatak