10분컷 지리네
어케품?
1,2,2,6,6,6,6,30,30,30... 이런식으로 증가함 2의 거듭제곱일 때마다 증가값이 바뀜
a1<a2고 b1<b2가 되려면 2진법으로 나타냈을 때 최대자리가 단조증가해야함
이런뻐킹
2 2 6 6 6 6 30 30 여기 뭔가 있을거같은데 하
bit 순서대로 값의 갯수를 구한다음에
갯수 마다 ans = (ans+(ans+1)*i번 비트갯수) 하면댐
비트마다 값의 갯수가 a b c 라고 가정하면 a + b + c + a*b + a*c + b*c +a*b*c 이 므로 이걸 a로 묶으면 a*(1 + b+c+b*c) + b+c+b*c 이렇게 됨으로 a 안에 있는 거랑 a 밖에 있는건 b c 로 똑같이 구하면 되는 값임
모듈로는 어떻게 함? d = 10^9로 줘버리고 모듈로를 다르게 줘버리면 다시 다 계산해야하는 거 아님?
계산하는데 별로 안걸림 비트 단위별로 dp식 짜면
시발 규칙은 알겠는데 모듈로를 어떻게 해야할지 모르겠는데수,....
곱할때마다 나눠주면 되지
오 개쩜 어쩌다보니 39분 댓글을 37분 댓글보다 먼저 올렸네
10분컷 지리네
어케품?
1,2,2,6,6,6,6,30,30,30... 이런식으로 증가함 2의 거듭제곱일 때마다 증가값이 바뀜
a1<a2고 b1<b2가 되려면 2진법으로 나타냈을 때 최대자리가 단조증가해야함
이런뻐킹
2 2 6 6 6 6 30 30 여기 뭔가 있을거같은데 하
bit 순서대로 값의 갯수를 구한다음에
갯수 마다 ans = (ans+(ans+1)*i번 비트갯수) 하면댐
비트마다 값의 갯수가 a b c 라고 가정하면 a + b + c + a*b + a*c + b*c +a*b*c 이 므로 이걸 a로 묶으면 a*(1 + b+c+b*c) + b+c+b*c 이렇게 됨으로 a 안에 있는 거랑 a 밖에 있는건 b c 로 똑같이 구하면 되는 값임
모듈로는 어떻게 함? d = 10^9로 줘버리고 모듈로를 다르게 줘버리면 다시 다 계산해야하는 거 아님?
계산하는데 별로 안걸림 비트 단위별로 dp식 짜면
시발 규칙은 알겠는데 모듈로를 어떻게 해야할지 모르겠는데수,....
곱할때마다 나눠주면 되지
오 개쩜 어쩌다보니 39분 댓글을 37분 댓글보다 먼저 올렸네