1526:彩礼和嫁妆

时间限制: 1 S | 内存限制: 8192 KB
Accept: 1 | Submit: 3
[提交] [状态] [讨论版]
描述

MJ和JM要结婚了,MJ向JM转了一笔钱(x1元)作为彩礼,JM按照一定的百分比(z%)向MJ转了一笔钱(y1=x1*z%)作为嫁妆。如果算出来的该笔金额y1是小数,那么对y1取整,舍去小数部分。以下每一次运算出来的结果都需要如此取整。

故事本来到此就该结束了,可是MJ继续地按照此百分比又向JM转了一笔钱(x2=y1*z%)作为彩礼(注意y1是按照取整后的值,以下类似的操作均如此),JM继续地按照此百分比又向MJ转了一笔钱(y2=x2*z%)作为嫁妆,...。直到某次的金额等于0为止,或者有一方现金不足(现金小于待转账金额)导致无法转账为止,上述列举的过程中(即转账x1、y1、x2、y2的步骤)如果出现这些情况也一样,都会立即中止互相转账的过程。

假设MJ初始有a元钱,JM初始有b元钱,已知x1和z,求当停止转账时,MJ和JM各自有多少钱?(很显然,这两个数的和应该等于a+b)

输入

多组案例。一个正整数n,表示案例的数量。(n<=100)

每组案例由4个正整数a、b、x1、z组成,含义见【描述】。(a<=1000000,b<=1000000,x1<=1000000,z<=1000)

输出

针对每组案例,如果转账操作永远停不下来,那么输出Endless loop;否则输出两个整数,用空格隔开,分别表示MJ和JM在结束转账后各自拥有的钱。

每组案例输出完都要换行。

样例输入

3

1000 1000 50 100

1000 300 100 50

1000 1000 300 500

样例输出

Endless loop

933 367

700 1300



HINT

第一组案例,两个人始终按50元互相转账,所以永远停不下来。

第二组案例,MJ出100,JM出50,MJ出25,JM出12,MJ出6,JM出3,MJ出1,JM出0,停止。此时MJ有1000-100+50-25+12-6+3-1=933元,JM有1000+300-933=367元。

第三组案例,MJ出300,JM本应当出300*500%=1500,可是此时JM的现金一共只有1000+300=1300元(包括MJ刚转的300),不够支付,所以就此结束。此时MJ有1000-300=700元,JM有1000+300=1300元。

来源
20-21(2)第1次线上赛