#include <iostream>
#include <algorithm>
#include <vector>
#include <set>
#include <iomanip>

#define MOD 1000000007
using namespace std;

typedef long long ll;
typedef long double ld;
typedef vector<int> vi;
typedef vector<pair<int, int>> vpii;

int main() {

	int n;
	cin >> n;

	double e = 0.0;
	for(int i = n; i > 1; i--) {
		e += (double)n / (n - i + 1);
	}

	cout << setprecision(10) << e << endl;
}
#include <algorithm> 
#include <cstdio>
#include <iostream>
#include <map>
#include <math.h>
#include <queue>
#include <set>
#include <stack>
#include <string>
#include <vector>
using namespace std;
typedef long long int ll;
typedef long double ld;
#define rep(i,n) for(int i = 0; i < (n); ++i)
#define Sort(Array) sort(Array.begin(), Array.end())
#define Reverse(a) reverse(a.begin(), a.end())
#define out(ans) cout << ans << endl;
const int MOD = 1000000007;
const int INF = 2147483647;
const ld PI = 3.14159265358979323846;




int main() {

    ll L; cin >> L;
    vector<int> order(11);
    rep(i,11) order[i] = i + 1;
    ll ans = 1;
    rep(i,11) {
        ans *= (L - 1 - i);
        rep(j,11) {
            if (ans % order[j] == 0) {
                ans /= order[j];
                order[j] = 1;
            }
        }
    }
    cout << ans << endl;


    return 0;
}
