結果
| 問題 | No.1470 Mex Sum | 
| コンテスト | |
| ユーザー |  学ぶマン | 
| 提出日時 | 2025-09-14 21:44:29 | 
| 言語 | PyPy3 (7.3.15) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 92 ms / 2,000 ms | 
| コード長 | 397 bytes | 
| コンパイル時間 | 481 ms | 
| コンパイル使用メモリ | 82,300 KB | 
| 実行使用メモリ | 101,464 KB | 
| 最終ジャッジ日時 | 2025-09-14 21:44:36 | 
| 合計ジャッジ時間 | 7,069 ms | 
| ジャッジサーバーID (参考情報) | judge3 / judge2 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 2 | 
| other | AC * 49 | 
ソースコード
N = int(input())
A = list(map(int, input().split()))
cnt = [0]*4
for a in A:
    if a >= 3:
        cnt[3] += 1
    else:
        cnt[a] += 1
ans = 0
# mex(1, 2) = 3
ans += cnt[1] * cnt[2] * 3
# mex(1, 1) = 2
ans += (cnt[1]*(cnt[1] - 1)//2) * 2
# mex(1, 1と2以外) = 2
ans += (cnt[1] * (N - cnt[1] - cnt[2])) * 2
# mex(1以外, 1以外) = 1
N -= cnt[1]
ans += N*(N - 1)//2 * 1
print(ans)
            
            
            
        