CF1753B.Factorial Divisibility
普及/提高-
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are given an integer x and an array of integers a1,a2,…,an. You have to determine if the number a1!+a2!+…+an! is divisible by x!.
Here k! is a factorial of k — the product of all positive integers less than or equal to k. For example, 3!=1⋅2⋅3=6, and 5!=1⋅2⋅3⋅4⋅5=120.
给你一个整数 x 和一个整数数组 a1,a2,…,an。你需要判断数 a1!+a2!+…+an! 是否能被 x! 整除。
其中,k! 表示 k 的阶乘——即所有小于等于 k 的正整数的乘积。例如,3!=1⋅2⋅3=6,而 5!=1⋅2⋅3⋅4⋅5=120。
输入格式
The first line contains two integers n and x (1≤n≤500000, 1≤x≤500000).
The second line contains n integers a1,a2,…,an (1≤ai≤x) — elements of given array.
第一行包含两个整数 n 和 x(1≤n≤500000,1≤x≤500000)。
第二行包含 n 个整数 a1,a2,…,an(1≤ai≤x)—— 给定数组的元素。
输出格式
In the only line print "Yes" (without quotes) if a1!+a2!+…+an! is divisible by x!, and "No" (without quotes) otherwise.
在唯一的一行中,如果 a1!+a2!+…+an! 能被 x! 整除,则输出 "Yes"(不带引号),否则输出 "No"(不带引号)。
输入输出样例
输入#1
6 4 3 2 2 2 3 3
输出#1
Yes
输入#2
8 3 3 2 2 2 2 2 1 1
输出#2
Yes
输入#3
7 8 7 7 7 7 7 7 7
输出#3
No
输入#4
10 5 4 3 2 1 4 3 2 4 3 4
输出#4
No
输入#5
2 500000 499999 499999
输出#5
No
说明/提示
In the first example 3!+2!+2!+2!+3!+3!=6+2+2+2+6+6=24. Number 24 is divisible by 4!=24.
In the second example 3!+2!+2!+2!+2!+2!+1!+1!=18, is divisible by 3!=6.
In the third example 7!+7!+7!+7!+7!+7!+7!=7⋅7!. It is easy to prove that this number is not divisible by 8!.
在第一个例子中,3!+2!+2!+2!+3!+3!=6+2+2+2+6+6=24。数 24 能被 4!=24 整除。
在第二个例子中,3!+2!+2!+2!+2!+2!+1!+1!=18,能被 3!=6 整除。
在第三个例子中,7!+7!+7!+7!+7!+7!+7!=7⋅7!。容易证明该数不能被 8! 整除。
输入解题思路,AI测评打分。不知道怎么写?