d252b   2년 전

테스트 케이스도 맞고, 제가 직접 입력한 여러개의 테스트 코드도 다 맞게 나오는데


답은 틀렸다고 나오네요. 


제가 놓친 부분이 어디가 있을까요??


시간 복잡도가 무려 N^4 이지만 일단 이것은 논외로 치고, 제가 빠뜨린 케이스 부분을 알고 싶습니다..


시간초과 뜨는것도 아니고 틀리다고 나오니까.. 무슨 케이스에서 틀렸는지 너무 궁금합니다.


wads12   2년 전

체스판입력받고나서 brute를돌릴때 좌상단이 B인지 W인지 구분을하셔서 돌리시는데 만약에

BBWBWBWB
BWBWBWBW
WBWBWBWB
BWBWBWBW
WBWBWBWB
BWBWBWBW
WBWBWBWB
BWBWBWBW

인경우면 brute에서 else문으로빠져서  63이나오겠죠? 그런데 답은 1일겁니다. 좌상단만 칠하여 바꾸는경우를 고려안하신게 아닐까 싶네요

d252b   2년 전

아 그러네요!!


한수 배우고 갑니다!! 


근데, brute 함수 내에서 if와 else를 제거했는데도 


또 틀렸다고 나오네요 ㅋㅋㅋㅋㅋ 으ㅠㅠ 

wads12   2년 전

한가지방법은 brute내에 한케이스(좌상단 W or B)만 푸신후에 그값이 32보다 크다면 64-x하는방법이있습니다.


어차피 64칸에서 x번칠해서 풀릴거라면 64-x번해도 풀릴거니까요

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