4978 - 数论:同余问题:C Looooops

通过次数

1

提交次数

2

时间限制 : 1 秒
内存限制 : 512 MB

原题来自:CTU Open 2004

对于 C 语言的

for (variable = A; variable != B; variable += C) statement; 循环语句,问在 k 位存储系统中循环几次才会结束。若在有限次内结束,则输出循环次数。否则输出死循环。

输入

多组数据,每组数据一行四个整数 A,B,C,k。k 表示 k 位存储系统。

读入以0000 结束。

输出

若在有限次内结束,则输出循环次数。否则输出 FOREVER。

样例

输入

3 3 2 16
3 7 2 16
7 3 2 16
3 4 2 16
0 0 0 0

输出

0
2
32766
FOREVER

提示

数据范围与提示:

对于全部数据,1≤k≤32,0≤A,B,C<2^k 。