If
n = p % q % r
wherep
,q
andr
are positive integers andp
>q
>r
, what is the maximum possible value that can be assigned ton
? (answer in terms ofp
,q
and/orr
)
我是否正确,因为表达式是从左到右求值的,那么 n
就等同于 (p % q) % r
因此无论(p % q)
是,n
最多只能是r-1
?
最佳答案
一般来说最大值为n
将是 min(q - 1, r - 1)
.
因为:
n = (p % q) % r
然后:
如果(q - 1) < (r - 1)
, 然后 (p % q) < (r - 1)
所以(p % q) % r == (p % q)
因此 n <= min(q - 1, r - 1)
这是 q - 1
.
如果(q - 1) >= (r - 1)
然后(如他的问题中所述)n < r - 1
这是 min(q - 1, r - 1)
在那种情况下。
所以:
当p > q > r
, 然后 min(q - 1, r - 1)
是r - 1
, 所以 n
最多是r - 1
.
关于python - 链式模运算的最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59527877/