結果
問題 |
No.1147 土偶Ⅱ
|
ユーザー |
![]() |
提出日時 | 2023-10-19 01:02:56 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 246 ms / 500 ms |
コード長 | 862 bytes |
コンパイル時間 | 112 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 11,136 KB |
最終ジャッジ日時 | 2024-09-18 20:58:39 |
合計ジャッジ時間 | 2,815 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 20 |
ソースコード
n,m=map(int,input().split()) F=[[] for i in range(n)] for i in range(m): a,b=map(int,input().split()) a-=1 b-=1 F[a].append(b) F[b].append(a) ANS=n*(n-1)*(n-2)//6 Distance=[[float("inf") for i in range(n)] for j in range(n)] for i in range(n): Distance[i][i]=0 for to in F[i]: Distance[i][to]=1 for k in range(n): # k個までの町を使ってのDisが知れているときに for i in range(n): # 町iと for j in range(i,n): # 町jとの最短距離は、 length=Distance[i][k]+Distance[j][k] if Distance[i][j]>length: Distance[i][j]=Distance[j][i]=length for i in range(n): for j in range(i+1,n): for k in range(j+1,n): if Distance[i][j]==2 or Distance[i][k]==2 or Distance[j][k]==2: ANS-=1 print(ANS)