結果
| 問題 | No.316 もっと刺激的なFizzBuzzをください |
| コンテスト | |
| ユーザー |
🍡yurahuna
|
| 提出日時 | 2015-12-20 16:08:11 |
| 言語 | PyPy2 (7.3.15) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 797 bytes |
| 記録 | |
| コンパイル時間 | 269 ms |
| コンパイル使用メモリ | 77,648 KB |
| 最終ジャッジ日時 | 2025-12-03 18:48:06 |
|
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 WA * 3 |
| other | AC * 15 WA * 18 |
ソースコード
#a, b, cがすべて異なるとき: 3つの集合の和集合
#n(AorBorC) = n(A)+n(B)+n(C)-n(A&B)-n(B&C)-n(C&A)+n(A&B&C)
#a, b, cのうちちょうど2つが等しいとき: 2つの集合の和集合
#a, b, cのどれもが等しいとき: n(a)
N = input()
li = map(int, raw_input().split())
li_uniq = [] #重複を消す
for i in li:
if not i in li_uniq:
li_uniq.append(i)
if len(li_uniq) == 3:
a = li_uniq[0]
b = li_uniq[1]
c = li_uniq[2]
na = N/a
nb = N/b
nc = N/c
nab = N/(a*b)
nbc = N/(b*c)
nca = N/(c*a)
nabc = N/(a*b*c)
print na+nb+nc-nab-nbc-nca+nabc
elif len(li_uniq) == 2:
a = li_uniq[0]
b = li_uniq[1]
na = N/a
nb = N/b
nab = N/(a*b)
print na+nb-nab
else:
a = li_uniq[0]
na = N/a
print na
🍡yurahuna