HZNUOJ

WLX搬砖

Tags:
Time Limit:  5 s      Memory Limit:   128 MB
Submission:164     AC:100     Score:95.71

Description

WLX现在是人见人爱,花见花开的高富帅,左拥WJJ右抱电脑。但是人们有所不知,春风得意的他也曾有着一段艰苦的奋斗史。
那时,WLX为了给WJJ买生日礼物,在某建筑工地搬砖挣钱。工地上运来一卡车砖,包工头CYP让WLX把砖卸下,并把一块快分开(要求任何2块砖都要分开)。作为资深搬砖工,WLX总是每次将一堆砖分为两堆,这时候,所消耗的体力是分完之后两堆砖数目的差值。
已知卡车运来的砖数目,请计算出WLX完成任务所需的最小体力。(主函数代码部分已经固定,请按需写函数部分)

#include<stdio.h>
int fun(int n);
int main()
{
    int T;
    scanf("%d", &T);
    while(T--)
    {
        int n;
scanf("%d", &n);
        printf("%d ", fun(n));
    }
    return 0;
}

Input

输入数据第一行是一个正整数T(T<=100),表示有T组测试数据。
接下来T行每行一个正整数N(N<=10000000),表示卡车运来的砖块数目。

Output

对于每组数据,请输出WLX完成任务所需的最少体力数。

Samples

input
3 3 7984715 6563104
output
1 1495412 2670304

Author

LI, Heng

Source

2015年秋学期《程序设计基础》第四次上机考试