wow1514   10달 전

어디서 가지치기 더 할 수 있는곳이 있을까요?

indioindio   10달 전

promising 함수를 약간 최적화 했더니 간신히 제 시간에 맞는 것 같습니다.(확인하느라 제출해봤는데 양해부탁드립니다.)

여러 곳에서 return하는 게 싫으시다면 promise 변수를 쓰셔도 아마 시간안에 될 텐데 굳이 while문에서 매번 promise==1인지는 비교하지 않아도 될 것 같습니다.


indioindio   10달 전

그리고 queens에서도 int j = 0; for(j=1...)보다는
for(int j = 1; j <= N; j++) 로 바꾸는 게 시간적 이득인 것 같습니다.

여담이지만 promising에서 k++을 원래 코드처럼 아래로 빼면 시간초과가 나네요 정말 간발의 차이인 것 같습니다.

wow1514   10달 전

허허... 말씀해주신 방법으로 고쳐도 시간초과 뜨길래

promising 함수의 리턴값을 int가 아닌 boolean으로 바꾸어서 queen 함수 수내에서 promising 함수의 리턴값을 비교하는게 아니라 바로 불린으로 판단하게하니

시간초과는 면하네요..

걸린시간을 보니 아주...

indioindio   10달 전

ㅋㅋ흠 이상하네요 채점현황을 보니 불리언 타입으로 바꾸신게 확실히 빠른데 저렇게만 수정해서 제출해도 11704ms으로 간신히 통과하던데 운도 조금 따라줘야 하는 모양이네요...

불리언이냐 인트 타입이냐도 영향을 약간은(꽤?) 주는군요 배워갑니다.

댓글을 작성하려면 로그인해야 합니다.