인프런 커뮤니티 질문&답변

moveityourself01님의 프로필 이미지
moveityourself01

작성한 질문수

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

1-K

올라왔던 질문이지만 시간초과 질문합니다.

작성

·

214

0

http://boj.kr/b073d7edeccf425cbd7f700cd557fa91

 

next_permutation을 이용하여 문자열의 요소들을 섞어가면서 각각의 경우에 reverse한 문자열과 일치하는 경우가 있는지 탐색하는 방법을 생각했습니다.

그런데 시간 초과가 발생하여 질문드립니다ㅠ

reverse 함수의 시간복잡도는 O(n) 아닌가요..??

어느 지점에서 시간이 문제가 된 것인지 궁금합니다.ㅠ

 

답변 1

0

큰돌님의 프로필 이미지
큰돌
지식공유자

안녕하세요 01님 ㅎㅎ

이 문제의 최대범위를 볼까요?

최대 50글자이다.

 

즉, 이걸 순열로 하면 50!입니다.....ㅎㅎ

 

이걸 숫자로 나타내면

304140932017133780436126081660647688443776415689605120000000
00000

입니다.. 그래서 시간초과가 나는 것 같아요

 

감사합니다.

moveityourself01님의 프로필 이미지
moveityourself01

작성한 질문수

질문하기