由于需要相乘的数很多,所以我们不能直接进行暴力模拟,我们知道10 = 2 * 5, 所以我们只需要找出这个数2和5的个数,其中2和5个数小的那个则为末尾0出现的个数
- #include
- using namespace std;
- typedef long long ll;
- int main()
- {
- ll x = 1, cnt2 = 0, cnt5 = 0, ans = 0;
- ll q;
- for(int i = 1; i <= 10; i ++)
- {
- for(int j = 1; j <= 10; j ++)
- {
- cin >> q;
- while(q % 5 == 0)
- {
- q /= 5;
- cnt5 ++;
- }
- while(q % 2 == 0)
- {
- q /= 2;
- cnt2 ++;
- }
-
- }
- }
- ans = min(cnt2, cnt5);
- cout << ans;
- return 0;
- }