fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. bool isLeap(long long y) {
  4. return (y % 400 == 0) || (y % 4 == 0 && y % 100 != 0);
  5. }
  6. int nnn(int m, long long y) {
  7. if (m == 2) return isLeap(y) ? 29 : 28;
  8. if (m == 4 || m == 6 || m == 9 || m == 11) return 30;
  9. return 31;
  10. }
  11. int main() {
  12. ios::sync_with_stdio(false);
  13. cin.tie(nullptr);
  14. long long d, m, y;
  15. int k;
  16. cin >> d >> m >> y >> k;
  17. int o = nnn(m, y);
  18. int b = (k == 8 ? 6 : k - 2);
  19. int a = (b - (int)((d - 1) % 7) + 7) % 7;
  20. int g = (a + (o - 1)) % 7;
  21. int t = (a == 0) ? 1 : (1 + (7 - a));
  22. int p = o - ((g - 6 + 7) % 7);
  23. cout << o << "\n";
  24. cout << t << "\n";
  25. cout << p << "\n";
  26. cout << (a == 6 ? 8 : a + 2) << "\n";
  27. cout << (g == 6 ? 8 : g + 2) << "\n";
  28.  
  29. return 0;
  30. }
  31.  
Success #stdin #stdout 0.01s 5288KB
stdin
8 3 2024 6
stdout
31
4
31
6
8