int main(void) {
long fall, n, k, p, i, j, r;
long long x, y, a[110][110];
for(a[0][0]=scanf("%ld",&fall);fall--;printf("%lld\n",y)) {
for(i=!!scanf("%ld%ld%ld",&n,&k,&p);i<=k+1;i++)
for(j=0;++j<=i;a[i][j]=(a[i-1][j-1]+j*a[i-1][j])%p)
;
for(y=!(j=1);j<=k+1;y=(y+a[k+1][j++]*x)%p)
for(x=!((r=n%j)*!(i=-1));++i<j;x=x*(n-i)/((i==r)?j:1)%p)
;
}
return 0;
}
for循环在这里如何工作?它不遵循我所看到的语法。有人可以帮我理解这个“for”循环是如何工作的吗?
为什么你关心混淆代码? – EOF
我是初学者。我以前从未遇到过这种情况。我想知道这是否是另一种编写循环的方式。 –
这是一个不寻常的方式来编写一个循环。它的代码不容易被理解,所以为什么要尝试? –