#include using namespace std; #define FOR(i,a,b) for(int i=(a);i<(b);i++) #define REP(i,n) FOR(i,0,n) #define ALL(v) (v).begin(),(v).end() template inline bool chmax(A &a, B b) { if (a inline bool chmin(A &a, B b) { if (a>b) { a=b; return 1; } return 0; } typedef unsigned long long ull; typedef long long ll; typedef pair pii; typedef pair pll; typedef pair P; const ll INF = 1ll<<29; const ll MOD = 1000000007; const double EPS = 1e-10; bool isleap(int y) { return y % 4 == 0 ? (y % 100 == 0 ? (y % 400 == 0 ? true : false) : true) : false; } int main() { ll n; cin >> n; ll y = 2014, cnt = 1, now = 0; FOR(i, 1, 400) { ll ny = y + i; now++; if (isleap(ny)) now++; now %= 7; if (now == 0) cnt++; } ll ans = (n - 2014) / 400 * cnt; y = n - (n - 2014) % 400; now = 0; if (y <= n) ans++; y++; while (y <= n) { now++; if (isleap(y)) now++; now %= 7; if (now == 0) ans++; y++; } ans--; cout << ans << endl; return 0; }