inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비

28. N!에서 0의 개수(소인수분해 응용)

5의 갯수만 구했습니다. 그런데 예외가 있을까 싶어 질문합니다.

334

김퍼블

작성한 질문수 9

0

저는 n!에서 10이 나오려면 무조건 5가 몇갠지만 체크하면 된다고 생각했습니다.

왜냐하면 우선 5!일 때 5의 갯수가 1개 있기 때문에 10이 나오기 때문입니다. 이미 5!일 때부터 5의 갯수는 1개, 2의 갯수는 3개니까요.

5의 제곱인 25!이라고 해도 5의 갯수는 겨우 5개인 반면 2의 갯수는 2~8까지만 봐도 이미 5개를 넘겼으니까요.

그래서 저는 그냥 5의 갯수만 세서 5의 갯수가 뒤에 붙는 0의 숫자라고 풀었습니다만 정말 만에 하나 예외가 있을 수도 있으니까요... 예외가 있는지 궁금합니다!

c++ 코딩-테스트

답변 1

0

김태원

안녕하세요^^

네. 그렇게 해도 상관없습니다. 2는 모든 짝수가 인수로 가지고 있는 숫자이지만 5는 모든 홀수가 가지고 있는 인수가 아니기때문에 N!의 경우를 소인수분해하면 2가 5보다는 더 많이 나오는 것 같습니다. 그리고 경험치에 의한 논리로 봐도 반례는 없어 보입니다.

실제 코테시험에서도 이런 경우 생각한대로 시도해보고 통과가 안되면 "반례가 있나?" 이렇게 생각하고 보완하면 되겠죠. 이 경우도 5의 개수를 답으로 해보고 통과안되면 영상처럼 해보는 거죠. 너무 걱정하지 않아도 됩니다. 여튼 제 생각에는 반례가 없어 보입니다.

0

김퍼블

넵 감사합니다!!

87번 채점 프로그램에 오류가 있는 것 같습니다.

0

91

2

그리디 파트

0

115

2

안녕하세요. 선생님(54번 코드 관련 문의)

0

143

2

테스트 파일 exit_coe_1, time_limit_exceeded 질문

0

143

1

C언어로 코드를 짜면 채점 시에 한 문제 빼고 시간 초과가 발생하는데 해결하는 방법이 있을까요?

0

173

1

19번 질문있습니다

0

123

1

6번 관련 채점오류입니다

0

88

2

22번 문제는 C로 풀어주신 건가요 C++로 풀어주신 건가요?

0

166

2

dev C++ 콘솔창 바로 닫힘

0

245

1

최신화하기

0

171

1

채점이 안되요...

1

261

1

안녕하세요 강사님 정렬에 대해서 설명이 조금 더 듣고 싶습니다.

0

113

1

45번 공주구하기 문제를 list를 이용해서 이렇게 풀어도 될까요?

0

155

1

39번 두 배열 합치기 문제 채점 오류인가 코드 오류인가

0

155

0

채점기에서 틀렸다고 나오는데 이유를 모르겠습니다.

0

150

2

해당 강의에서 C언어로만 진행하는 강의 문의 건

0

145

2

87번 문제 섬나라 아일랜드 질문

0

128

1

16번 문제에서 직접 답을 대입하면 정답이 나오는데 채점에서 wrong answer가 나옵니다.

0

149

1

40번 교집합 문제

0

166

1

43번 뮤직비디오 문제 테스트케이스 4번을 만족 못합니다.

0

170

1

41. 연속된 자연수의 합 문제 질문있습니다.

0

166

1

질문있습니다.

0

193

2

시간초과가 나요

0

172

1

43번 문제 3 ~ 5번에 문제가 있는것 같습니다.

0

249

1