pch6828   4년 전

사용가능한 색깔의 갯수가 최대 30이니, int 형식의 n번째 비트에 n번 색깔이 사용되었음을 저장하고, 이를 세그먼트 트리에 저장해서 구간에 사용된 색깔은 or연산으로 구했습니다. 즉, Get_Sum()으로 구한 값에서 1로 표시된 비트의 수를 세면 답이 나오리라는 생각이었습니다.

그런데 계속 틀렸다고 하네요. 이유가 무엇일까요?

kdh9949   4년 전

놀랍게도 쿼리에서 a > b일 수 있습니다...

if(a > b) swap(a, b);

를 94번 줄 뒤에 넣으면 맞을 것 같습니다.

pch6828   4년 전

아! 그걸 생각 못했네요 감사합니다ㅠㅠ

해결했습니다!

rkaxhdals   2년 전

하 이게 맞나요 진짜 이런걸로 틀릴 때마다 진짜 현타오네요

문제 꼼꼼히 안 읽은 제 잘못이지만... 무슨 국어 독해도 아니고 푸는 사람만 짜증나게 하는 이런 케이스는 좀 배제해줬으면 하네요 ㅠ

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