#include #define ll long long #define ld long double #define rep(i,a,b) for (int i = a; i < b; i++) #define irep(i,a,b) for (int i = a; i > b; i--) #define print(n) cout << n << endl #define rup(a,b) (a+b-1)/b using namespace std; void calc(int n, int k,bool p,int a,int now,vector& A){ int b = 0; if (p){ if (now <= k){ rep(i,4,7){ b = a + i; if (now == n){ A[b] ++; A[b] ++; }else{ calc(n,k,p,b,now+1,A); calc(n,k,p,b,now+1,A); } } }else{ rep(i,1,7){ b = a + i; if (now == n){ A[b] ++; }else{ calc(n,k,p,b,now+1,A); } } } }else{ rep(i,1,7){ b = a + i; if (now == n){ A[b] ++; }else{ calc(n,k,p,b,now+1,A); } } } } int main(){ cout << fixed << setprecision(15); int N,K;cin>>N>>K; vector A(6*N+1,0); vector B(6*N+1,0); calc(N,K,true,0,1,A); calc(N,K,false,0,1,B); ll ok = 0; ll all = pow(6,N)*pow(6,N); rep(i,1,6*N+1){ //cout << A[i] << " " << B[i] << endl; rep(j,1,i){ ok += A[i]*B[j]; } } //print(ok); print((long double)ok/all); //system("pause"); return 0; }