結果
問題 | No.546 オンリー・ワン |
ユーザー | tonnnura172 |
提出日時 | 2020-06-30 11:32:15 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 39 ms / 2,000 ms |
コード長 | 987 bytes |
コンパイル時間 | 237 ms |
コンパイル使用メモリ | 12,544 KB |
実行使用メモリ | 11,264 KB |
最終ジャッジ日時 | 2024-07-21 20:15:46 |
合計ジャッジ時間 | 1,585 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 7 |
ソースコード
import sys, refrom collections import deque, defaultdict, Counterfrom math import ceil, sqrt, hypot, factorial, pi, sin, cos, radians, gcdfrom itertools import accumulate, permutations, combinations, product, groupby, combinations_with_replacementfrom operator import itemgetter, mulfrom copy import deepcopyfrom string import ascii_lowercase, ascii_uppercase, digitsfrom bisect import bisect, bisect_leftfrom heapq import heappush, heappopfrom functools import reducedef input(): return sys.stdin.readline().strip()def INT(): return int(input())def MAP(): return map(int, input().split())def LIST(): return list(map(int, input().split()))def ZIP(n): return zip(*(MAP() for _ in range(n)))sys.setrecursionlimit(10 ** 9)INF = float('inf')mod = 10 ** 9 + 7N, L, H = MAP()C = LIST()lcm = lambda x, y:x*y//gcd(x, y)ans = 0for i in range(1, N+1):for c in combinations(C, i):l = reduce(lcm, c)ans += i*(-1)**(i+1)*(H//l - (L-1)//l)print(ans)