2010年9月19日 星期日

ACM 350 - Pseudo-Random Numbers

#include <stdio.h>

int PseRand(int Z, int I, int M, int L)
{
return (Z * L + I) % M;
}

int main()
{
int Z, I, M, L, caseNum = 1;

while (1)
{
scanf("%d %d %d %d", &Z, &I, &M, &L);
if (Z == 0 && I == 0 && M == 0 && L == 0) break;
int isTrue[10000] = {0}, len[10000] ;
printf("Case %d: ", caseNum++);
int count = 0;
while (!isTrue[L])
{
isTrue[L] = 1, len[L] = count ++;
L = PseRand(Z, I, M, L);
}
printf("%d\n", count - len[L]);
}

return 0;
}

回目錄
回首頁

沒有留言 :

張貼留言

Related Posts Plugin for WordPress, Blogger...