描述
编译器之谜:我们给出了一个C语言风格的循环类型
for(variable = A; variable!= B; variable + = C)
声明;
即,一个循环,其开始于将变量设置为值A,并且当变量不等于B时,重复语句,然后将变量增加C.我们想知道对于A,B的特定值执行语句多少次和C,假设所有算术在k位无符号整数类型(值0 <= x <2k)模2k中计算。
输入
输入由几个实例组成。每个实例由具有由单个空间分隔的四个整数A,B,C,k的单行来描述。整数k(1 <= k <= 32)是循环的控制变量的位数,A,B,C(0 <= A,B,C <2k)是循环的参数。
输入由包含四个零的行完成。
输出
输出由对应于输入上的实例的几行组成。第i行包含第i个实例中的语句的执行次数(单个整数),如果循环未终止,则包含字FOREVER。