郭式树
Time Limit:2000MS Memory Limit:128000KB 64bit IO Format:%lld & %llu
Submit Status Practice ACdream 1061
Description
郭橐驼,不知始何名。病偻,隆然伏行,有类橐驼者,故乡人号之驼。驼闻之,曰:“甚善。名我固当。”因舍其名,亦自谓橐驼云。其乡曰丰乐乡,在长安西。驼业种树,凡长安豪富人为观游及卖果者,皆争迎取养。视驼所种树,或移徙,无不活;且硕茂,蚤实以蕃。他植者虽窥伺效慕,莫能如也。 有问之,对曰:“橐驼非能使木寿且孳也,以能顺木之天,以致其性焉尔。凡植木之性,其本欲舒,其培欲平,其土欲故,其筑欲密。既然已,勿动勿虑,去不复顾。其莳也若子,其置也若弃,则其天者全,而其性得矣。故吾不害其长而已,非有能硕而茂之也。不抑耗其实而已,非有能蚤而蕃之也。他植者则不然:根拳而土易。其培之也,若不过焉则不及。苟有能反是者,则又爱之太殷,忧之太勤。旦视而暮抚,已去而复顾;甚者爪其肤以验其生枯,摇其本以观其疏密,而木之性日以离矣。虽曰爱之,其实害之;虽曰忧之,其实仇之,故不我若也,吾又何能为哉?”
相传郭橐驼又在种树了,他沿着一条笔直的马路种了3棵树A,B,C。
不过忘记了ABC从左到右的顺序,他只知道B在A的右方 x 步处(如果 x 为负则B在A的左方 -x 步处),C在A的右方 y 步处(如果 y 为负责C在A左方 -y 步处)。
他想知道BC距离多少步(答案一定为正数且不为0)。
因为他种的树太多了,他只知道 |x|, |y| (取绝对值, |1| = 1, |-2| = 2) ≤ 4611686018427387904
Input
第一行是数据组数T(T ≤ 100000)
每组数据两个整数 x , y (-4611686018427387904 ≤ x, y ≤ 4611686018427387904)
Output
对于每组数据输出一个正数代表BC间的距离
Sample Input
2 1 2 4611686018427387904 -4611686018427387904
Sample Output
1 9223372036854775808
1 #include<stdio.h> 2 #include<algorithm> 3 int T ; 4 typedef long long ll ; 5 ll x , y ; 6 7 int main () 8 { 9 //freopen ("a.txt" , "r" , stdin ) ; 10 scanf ("%d" , &T); 11 while (T--) { 12 scanf ("%lld%lld" , &x , &y) ; 13 if (x < y) std::swap (x , y) ; 14 if (y < 0 ) { 15 y = -y ; 16 printf ("%llu\n" , (unsigned ll) x + y) ; 17 } 18 else printf ("%llu\n" , (unsigned ll) x - y) ; 19 } 20 return 0 ; 21 }
因为刚好会有一个答案比long long 多1 , 所以灵活运用unsigned long long 就行了。