#define _CRT_SECURE_NO_WARNINGS #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define INF (1<<29) #define rep(i,n) for(int i=0;i<(int)(n);i++) #define all(v) v.begin(),v.end() #define uniq(v) v.erase(unique(all(v)),v.end()) #define indexOf(v,x) (find(all(v),x)-v.begin()) int main() { ios::sync_with_stdio(0); cin.tie(0); int n,k; cin>>n>>k; double p1[61]={},p2[61]={}; p1[0]=p2[0]=1; rep(j,n){ for(int i=(n-1)*6;i>=0;i--){ rep(d,6){ p1[i+d+1]+=p1[i]/6; } p1[i]=0; } } rep(j,k){ for(int i=(n-1)*6;i>=0;i--){ rep(d,3){ p2[i+d+4]+=p2[i]/3; } p2[i]=0; } } rep(j,n-k){ for(int i=(n-1)*6;i>=0;i--){ rep(d,6){ p2[i+d+1]+=p2[i]/6; } p2[i]=0; } } double ans=0; double s=0; for(int i=1;i<=n*6;i++){ ans += p2[i]*s; s+=p1[i]; } printf("%.3f\n",ans); return 0; }