Таня, мячи и <<исключающее или>>
면접 대비시간 제한1초메모리 제한1024 MB
1 이상 n 이하의 서로 다른 두 수 x, y에 대해 x xor y의 합을 10^9+7로 나눈 나머지를 구한다.
문제
У Тани было мячей, она пронумеровала их от до . Но, к сожалению, Таня уронила все мячи в реку и сильно расстроилась.
Чтобы утешить ее, старший брат Сережа предложил Тане забавное математическое развлечение: посчитать сумму попарных исключающих или от номеров ее мячей.
Исключающее или двух чисел обозначается как и соответствует операции <<xor>> в паскале или <<\char 94>> в других языках. Чтобы вычислить для двух целых чисел, необходимо сделать следующее: представить каждое из чисел в двоичной системе счисления и сделать -й разряд результата единицей, если он равен единице ровно в одном из чисел и . Например, , .
Помогите Тане! Посчитайте сумму по всем парам ее мячей исключающих или их номеров. Таня не любит большие числа, так что ответ необходимо вывести по модулю .
Например, если у Тани было мяча, то искомое значение равно .
입력
В первой строке задано число --- количество мячей у Тани ().
출력
Выведите сумму по всем парам ее мячей исключающих или их номеров, взятую по модулю .