#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define REP(i,n) for(int i=0;i( \ ( std::ostringstream() << std::dec << x ) ).str() #define ALL(s) (s).begin(), (s).end() using namespace std; typedef long long unsigned int llu; typedef long long ll; const string D_blue = "\x1b[36m"; const string D_green = "\x1b[32m"; const string D_red = "\x1b[31m"; const string D_yellow = "\x1b[33m"; const string Db_red = "\x1b[41m"; const string Db_yellow = "\x1b[43m"; const string D_end = "\x1b[39m"; const string Db_end = "\x1b[49m"; int main (){ int k; int dice[2][6] = {{2,3,5,7,11,13},{4,6,8,9,10,12}}; while (cin >> k){ vector vi; REP(i,6){ if(k % dice[0][i] == 0){ vi.push_back(k / dice[0][i]); } } int cnt = 0; REP(i,vi.size()){ REP(j,6){ if(vi[i] == dice[1][j]){ cnt++; } } } double ans = (double)cnt / (double)36; printf("%.13f\n" , ans); } return 0; }