#include <bits/stdc++.h>
using namespace std;
long long memo[65][65][2];
int n,k;
long long DP(int index,int cnt,int found)
{
long long &res = memo[index][cnt][found];
if(res==-1)
{
res = 0;
if(index==n)
{
if(found)
res = 1;
}
else
{
if(cnt+1>=k)
res += DP(index+1,cnt+1,true);
else
res += DP(index+1,cnt+1,found);
res += DP(index+1,0,found);
}
}
return res;
}
long long gcd(long long a,long long b)
{
if(b==0)
return a;
else
return gcd(b,a%b);
}
int main()
{
for(int i=0;i<65;++i)
for(int j=0;j<65;++j)
for(int k=0;k<2;++k)
memo[i][j][k] = -1;
cin >> n >> k;
long long ans = DP(0,0,0),den = (1LL<<n),m;
//cout << ans << endl;
m = gcd(ans,den);
cout << ans/m << "/" << den/m;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgpsb25nIGxvbmcgbWVtb1s2NV1bNjVdWzJdOwppbnQgbixrOwoKbG9uZyBsb25nIERQKGludCBpbmRleCxpbnQgY250LGludCBmb3VuZCkKewoJbG9uZyBsb25nICZyZXMgPSBtZW1vW2luZGV4XVtjbnRdW2ZvdW5kXTsKCWlmKHJlcz09LTEpCgl7CgkJcmVzID0gMDsKCQlpZihpbmRleD09bikKCQl7CgkJCWlmKGZvdW5kKQoJCQkJcmVzID0gMTsKCQl9CgkJZWxzZQoJCXsKCQkJaWYoY250KzE+PWspCgkJCQlyZXMgKz0gRFAoaW5kZXgrMSxjbnQrMSx0cnVlKTsKCQkJZWxzZQoJCQkJcmVzICs9IERQKGluZGV4KzEsY250KzEsZm91bmQpOwoJCQlyZXMgKz0gRFAoaW5kZXgrMSwwLGZvdW5kKTsKCQl9Cgl9CglyZXR1cm4gcmVzOwp9Cgpsb25nIGxvbmcgZ2NkKGxvbmcgbG9uZyBhLGxvbmcgbG9uZyBiKQp7CglpZihiPT0wKQoJCXJldHVybiBhOwoJZWxzZQoJCXJldHVybiBnY2QoYixhJWIpOwp9CgppbnQgbWFpbigpCnsKCWZvcihpbnQgaT0wO2k8NjU7KytpKQoJCWZvcihpbnQgaj0wO2o8NjU7KytqKQoJCQlmb3IoaW50IGs9MDtrPDI7KytrKQoJCQkJbWVtb1tpXVtqXVtrXSA9IC0xOwoJY2luID4+IG4gPj4gazsKCWxvbmcgbG9uZyBhbnMgPSBEUCgwLDAsMCksZGVuID0gKDFMTDw8biksbTsKCS8vY291dCA8PCBhbnMgPDwgZW5kbDsKCW0gPSBnY2QoYW5zLGRlbik7Cgljb3V0IDw8IGFucy9tIDw8ICIvIiA8PCBkZW4vbTsKfQ==