일단 조합연산 자체도 이런식으로 for문을 두개 쓰지않고 하나만 사용해서 해결할 수 있습니다.
n, m=map(int,input().split())
count=1
m=min(n-m,m)
for i in range(m):count*=(n-i)/(i+1)
그렇지만 실제로 실행해보진 않았는데 아마 이쪽도 시간초과는 날것같네요.
///
이 문제에서 연산시간을 줄이는 방법은
A 와 B라는 숫자가 들어왔을때, A와 B를 그냥 조합연산을 해서 뒤에 오는 0의 개수를 세는 것 이 아니라
A와 B의 조합연산시
분자쪽에 들어가게 될 2,5 Set의 합 - 분모쪽에 들어가게될 2,5 Set의 합을 빼주는 방법을 사용하는 것입니다.
nayounsang1 2년 전
조합연산을 제 함수보다 더 빠르게 할 수 있나요?
주석친 것도 시간초과가 뜨네요
팩토리얼구하면서 곱해지는 5와 2가 몇개있는지는 딱봐도 넘 오래걸릴거같네요