A90646.Equalization

普及+/提高

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

给定两个非负整数 xxyy

你可以执行以下操作任意次数(包括零次):选择一个正整数 kk,并将 xxyy 除以 2k2^k(向下取整)。此操作的代价为 2k2^k。但存在额外约束:每个 kk 值最多只能选择一次。

你的任务是计算使 xxyy 相等所需的最小可能代价。

输入格式

第一行包含一个整数 tt1t1051 \le t \le 10^5)——测试用例的数量。

每个测试用例的唯一一行包含两个整数 xxyy0x,y10170 \le x, y \le 10^{17})。

输出格式

对于每个测试用例,输出一个整数——使 xxyy 相等所需的最小可能代价。

输入输出样例

  • 输入#1

    5
    0 1
    6 2
    3 3
    13 37
    4238659325782394 12983091057341925

    输出#1

    2
    6
    0
    26
    32764

说明/提示

第一个示例中,可以按如下步骤操作:选择 k=1k=1 并将 yy 除以 22。之后,xxyy 均等于 00

第二个示例中,可以按如下步骤操作:选择 k=2k=2 并将 xx 除以 44;选择 k=1k=1 并将 yy 除以 22。之后,xxyy 均等于 11

第三个示例中,两数已经相等,无需操作。

首页