#include #include #include typedef long long int int64; #define MAX(a,b) ((a)>(b)?(a):(b)) #define MIN(a,b) ((a)<(b)?(a):(b)) #define ABS(a) ((a)>(0)?(a):-(a)) //n<=l, r<=6*n void solveSmall(int n,int l,int r){ double *now=(double *)malloc(sizeof(double)*(r+1)); double *next=(double *)malloc(sizeof(double)*(r+1)); now[0]=1; const double p=(double)1/6; int i,j,k; for(i=1;i<=n;i++){ for(j=i;j<=MIN(6*i,r);j++) next[j]=0; for(j=i-1;j<=MIN(6*(i-1),r);j++){ for(k=1;k<=6 && k<=r-j;k++){ next[j+k]+=now[j]*p; } } double *swap=now; now=next; next=swap; } double sum=0; for(i=l;i<=r;i++) sum+=now[i]; printf("%.9lf\n",sum); free(now); free(next); return; } void solveLarge(int64 n,int64 l,int64 r){ double e=3.5*n; double v=n*(double)35/12; double sqv=sqrt(v); double ll=(l-0.5-e)/sqv; double rr=(r-0.5-e)/sqv; double p=(erf(rr/sqrt(2))-erf(ll/sqrt(2)))/2; printf("%.9lf\n",p); return; } void run(void){ int64 n; scanf("%lld",&n); int64 l,r; scanf("%lld%lld",&l,&r); if(l>6*n || r