結果
| 問題 |
No.852 連続部分文字列
|
| コンテスト | |
| ユーザー |
titia
|
| 提出日時 | 2019-07-27 00:16:28 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 795 ms / 3,153 ms |
| コード長 | 348 bytes |
| コンパイル時間 | 339 ms |
| コンパイル使用メモリ | 82,248 KB |
| 実行使用メモリ | 280,296 KB |
| 最終ジャッジ日時 | 2024-07-02 10:12:36 |
| 合計ジャッジ時間 | 11,598 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 41 |
ソースコード
S=input()
L=len(S)
M=[[1<<40]*(L+1) for i in range(26)]
for i in range(L-1,-1,-1):
for j in range(26):
if ord(S[i])-97==j:
M[j][i]=i
else:
M[j][i]=M[j][i+1]
ANS=0
for j in range(26):
for i in range(L):
if M[j][i]==1<<40:
continue
ANS+=L-M[j][i]
print(ANS/(L*(L+1)/2))
titia