省略
省略
C++に変換後のコードはこちら
int N, M, A[5d5], B[5d5], C[5d5], X[3][3];
char S[1d5+2];
wgraph<int> g;
{
int node;
rd(N, M, X[0][1], X[0][2], X[1][2], S, (A--,B--,C)(M));
rep(i,M) (A[i+M], B[i+M], C[i+M]) = (B[i], A[i], C[i]);
M *= 2;
node = N + 6;
rep(i,N) S[i] -= 'A';
rep(i,N) arrInsert(M, M, A, i, B, N+S[i], C, 0);
rep(i,N) arrInsert(M, M, A, N+3+S[i], B, i, C, 0);
rep(i,3) rep(j,3) if(i!=j) arrInsert(M, M, A, N+i, B, N+3+j, C, X[min(i,j)][max(i,j)]);
g.setDirectEdge(node, M, A, B, C);
wt(g.getDistT<ll>(0,N-1));
}
Current time: 2024年03月29日21時35分41秒
Last modified: 2020年11月15日16時15分00秒 (by laycrs)
Tags: Competitive_Programming_Incomplete AtCoder
トップページに戻る
Logged in as: unknown user (not login)