Ps갤와서 따지기 그러긴한데
개X밥 기준으로 비트연산 쓸만한거 뭐 있어?
지금 자주 사용하는건
X >>> 1
X << 1
두개만 쓰다가
최근에 sum ^= x로 하나의 쌍을 소거해나갈 수 있다는거 알고 요긴하게 잘 쓰는 중
&나 |에도 뭔가 있을 것같은데 혹시 다른 실전 꿀팁같은거 있을까요?
개X밥 기준으로 비트연산 쓸만한거 뭐 있어?
지금 자주 사용하는건
X >>> 1
X << 1
두개만 쓰다가
최근에 sum ^= x로 하나의 쌍을 소거해나갈 수 있다는거 알고 요긴하게 잘 쓰는 중
&나 |에도 뭔가 있을 것같은데 혹시 다른 실전 꿀팁같은거 있을까요?
비트 디피 같은거 하다보면 둘 다 아 이래서 쓰나 싶은 곳이 있긴 해
비트 디피는 너무 하드해서 아마 거기까지 갈 일 없을 것같긴 한데 어떤 경우가 있음 예를 들면?
상태를 비트로 표현할 수 있는데 n번째 불이 켜져있냐? 같은걸 x & (1<<n) 으로 확인하는 식?
아 옛날에 봤던 기억 나는 것같음 ㄱㅅㄱㅅ |만 찾아보면 되겠다
x>>n&1 로 쓰면 괄호를 안쳐도 된다는 사실 - dc App
오 ㅂㅋ 꿀팁 ㄱㅅ
MCMF구현처럼 2개의 값들을 차례로 vector에 넣을때 어떤 자료 i에 대해서 그것과 같이 넣었던 다른 값은 i^1이 됨. 예를들어 0번 edge와 같이 넣은 edge는 0^1=1번 edge고, 1번 edge와 같이 넣은 edge는 1^1=0번 edge임. 이거쓰면 MCMF 구현할때 역간선 찾기 위해서 귀찮은 if문 쓰지 않아도 됨.
이건 너무 맵네..찾아보겠음 ㄱㅅㄱㅅ
>> 1 정도는 * 2로 써도 컴파일러 단에서 최적화 해줌.. 나도 옛날에 그렇게 쓰다가 바꿈
오버플로우 나잖아 >>는 1 << n 말씀하쉰?
n << 1 = n * 2
for i:(2의n승만큼 반복) for j:(2의n승만큼 반복) if i&j: print'#' else: print'*'
번외로 신기한거 출력되는의사코드 써빔