static int poker_results() { int r; double chi2,a,b,e; double f2,e2; int df; char s1[LLENGTH],s2[LLENGTH]; /* d=n_pok k=poklen */ stirling(poklen,s_pok); chi2=0.0; b=(double)n/(double)poklen/pow((double)n_pok,(double)poklen); print_line(" "); sprintf(sbuf,"Poker test: Different values r in sequences of %d.",poklen); print_line(sbuf); print_line(" r Frequency Expected"); f2=e2=0.0; df=-1; for (r=1; r<=n_pok; ++r) { b*=(double)(n_pok-r+1); e=b*s_pok[r-1]; fconv(e,"",s1); sprintf(sbuf,"%6d %8u %s",r,f_pok[r-1],s1); print_line(sbuf); e2+=e; f2+=f_pok[r-1]; if (e2<5.0 && r<n_pok) continue; a=f2-e2; chi2+=a*a/e2; ++df; e2=f2=0.0; } fnconv2(chi2,accuracy,s1); fnconv2(1.0-muste_cdf_chi2(chi2,(double)df,1e-15),accuracy,s2); sprintf(sbuf,"Chi2=%s df=%d P[poker]=%s",s1,df,s2); print_line(sbuf); return(1); }
static int coup_results() { int i,r; double chi2,a,b,e; double f2,e2; int df; unsigned int nc; char s1[LLENGTH],s2[LLENGTH]; /* d=couplen t=coupmax */ b=1.0; for (r=2; r<couplen; ++r) b*=(double)r/(double)couplen; nc=0L; for (i=couplen-1; i<coup_max; ++i) nc+=f_coup[i]; print_line(" "); sprintf(sbuf,"Coupon collector's test: Waiting time r for a complete series of %d alternatives.",couplen); print_line(sbuf); print_line(" r Frequency Expected"); f2=e2=0.0; df=-1; chi2=0.0; for (r=couplen; r<coup_max; ++r) { b/=(double)couplen; stirling(r-1,s_coup); e=(double)nc*b*s_coup[couplen-2]; fconv(e,"",s1); sprintf(sbuf,"%6d %8u %s",r,f_coup[r-1],s1); print_line(sbuf); e2+=e; f2+=f_coup[r-1]; if (e2<5.0) continue; a=f2-e2; chi2+=a*a/e2; ++df; e2=f2=0.0; } stirling(coup_max-1,s_coup); e=(double)nc*(1.0-b*s_coup[couplen-1]); fconv(e,"",s1); sprintf(sbuf,"%6d- %8u %s",coup_max,f_coup[coup_max-1],s1); print_line(sbuf); e2+=e; f2+=f_coup[coup_max-1]; a=f2-e2; chi2+=a*a/e2; ++df; fnconv2(chi2,accuracy,s1); fnconv2(1.0-muste_cdf_chi2(chi2,(double)df,1e-15),accuracy,s2); sprintf(sbuf,"Chi2=%s df=%d P[coupon]=%s",s1,df,s2); print_line(sbuf); return(1); }
int main() { int n, k; n = 3; k = 2; printf("stirling(%d/%d) = %ld\n", n, k, stirling(n,k)); return 0; }
int main() { int N; scanf ("%d", &N); int i; for (i = 1; i <= N; i++) scanf ("%ld", &number[i]); for (i = 1; i <= N; i++) printf ("%lld\n", stirling (number[i])); return 0; }
int main() { int test_cases; scanf("%d",&test_cases); while(test_cases--) { ll n; scanf("%lld",&n); if(n==0) printf("1\n"); else printf("%lld\n",stirling(n)); } return 0; }
void pluginFilter(void *handle, const char *from, const char *host, const char *command, const char *channel, const char *message) { char buff[520]; int i, j; double k; time_t t; if (strcmp(command, "PRIVMSG") != 0) return; channel = ircGetIntendedChannel(channel, from); if (strcmp(message, API_HELP_CMD) == 0) sendHelp(from); if (strstr(message, "<s ") == message) { t = time(NULL); i = j = 0; sscanf(message, "<s %i, %i", &i, &j); k = stirling(i, j, time(NULL)); if (time(NULL) - t >= 5) sprintf(buff, "S(%i, %i) took too long .-.", i, j); else sprintf(buff, "S(%i, %i) = %f", i, j, k); ircMessage(channel, buff); } else if (strstr(message, "<fibo") == message) { i = 0; sscanf(message, "<fibo %i", &i); k = fibonacci(i); if (k > 0) sprintf(buff, "Fibonacci number %i is %.0f", i, k); else sprintf(buff, "Fibonacci number %i is inf", i); ircMessage(channel, buff); } return; }
int main(void) { stirling(n); printf("bell(%lu)= %lu\n", n, bell(n)); return 0; }