#517. C Looooops

C Looooops

题目描述

原题来自:CTU Open 2004

对于C\red C 语言的

for (variable = A; variable != B; variable += C)
  statement;

循环语句,问在k\red k 位存储系统中循环几次才会结束。若在有限次内结束,则输出循环次数。否则输出死循环。

输入格式

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

读入以 0 0 0 0 结束。

输出格式

若在有限次内结束,则输出循环次数。否则输出 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

数据范围与提示

对于全部数据,1k32\red{1\le k\le 32},0A,B,C<2k\red{0\le A,B,C\lt 2^k}