10의 배수의 개수를 찾는 문제.
이런 조건 때문에 사실 5의 배수 개수만 구해도 충분하다.
#include <stdio.h>
int main() {
int N,A1,A2,A3;
scanf("%d",&N);
A1=N/125; A2=N/25-A1; A3=N/5-A1-A2;
printf("%d",3*A1+2*A2+A3);
}
125의 배수에 대해서는 3을, 25에는 2를, 5에는 1을 곱했다. 그 이유는 꼴 때문이다.
그러나 내 풀이가 가장 짧은 풀이는 아니다.
main(n){scanf("%d",&n);printf("%d",n/5+n/25+n/125);}
dnjsdnd36님의 풀이
-> https://www.acmicpc.net/source/56193
매우 간결하다. 개수만 파악하면 되니, 5의 몇 제곱꼴이었는지 확인하고 곱할 필요도 없이 다 더하면 정답이 된다.