钻石和剑
题号:NC213918
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

Sgreen喜欢吃完午饭后玩我的世界这款游戏,某次路过一个村庄时一位村民向他走来,村民说道:“给我一把钻石铲或者一把钻石剑,我会给你一个绿宝石”,一把钻石铲由2个木棍和一个钻石合成,一把钻石剑由1个木棍和2个钻石合成。Sgreen看着自己背包里面有a个木棍和b个钻石,想知道最多能换取多少个绿宝石。

输入描述:

第一行为一个整数t (1 <= t <= 50) .

下面每一行包含两个整数a ,b (0 <= a ,b <= 109)

输出描述:

打印t行,每一行为最多换取的绿宝石数。
示例1

输入

复制
4
4 4
1000000000 0
7 15
8 7

输出

复制
2
0
7
5