Advertisement
Guest User

Untitled

a guest
Oct 15th, 2019
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.72 KB | None | 0 0
  1. // Просто решаю.cpp : Этот файл содержит функцию "main". Здесь начинается и заканчивается выполнение программы.
  2. //
  3.  
  4. //KiruxaLight
  5. #define _CRT_SECURE_NO_WARNINGS
  6. #define _USE_MATH_DEFINES
  7. #include <iostream>
  8. #include <vector>
  9. #include <string>
  10. #include <set>
  11. #include <map>
  12. #include <algorithm>
  13. #include <utility>
  14. #include <cmath>
  15. #include <iomanip>
  16. #include <stack>
  17. #include <deque>
  18. #include <queue>
  19. #include <cstdio>
  20. #include <unordered_map>
  21. #include <unordered_set>
  22. using namespace std;
  23. #define int long long
  24. #define all(a) a.begin(), a.end()
  25. #define rall(a) a.rbegin(), a.rend()
  26. const int INF = 1e9 + 47, MAXN = 2e5 + 47;
  27. signed main()
  28. {
  29.     /*freopen("ladder.in", "r", stdin);
  30.     freopen("ladder.out", "w", stdout);*/
  31.  
  32.     ios_base::sync_with_stdio(false);
  33.     cin.tie(NULL);
  34.     cout.tie(NULL);
  35.  
  36.     int n, k4, k2;
  37.     cin >> n >> k4 >> k2;
  38.     int kek = min((double)k4, ceil((double)n / 4));
  39.     if (n - kek * 4 <= 0)
  40.     {
  41.         cout << kek;
  42.         return 0;
  43.     }
  44.     else
  45.     {
  46.         int lol = min((double)k2, ceil((double)n / 2));
  47.         if (n - kek * 4 - lol * 2 <= 0)
  48.         {
  49.             n -= kek * 4;
  50.             int privet = min((double)k2, ceil((double)n / 2));
  51.             if (n - privet * 2 <= 0)
  52.             {
  53.                 cout << kek + privet;
  54.                 return 0;
  55.             }
  56.         }
  57.        
  58.         else if (n - kek * 4 - lol * 2 > 0)
  59.         {
  60.             cout << -1;
  61.             return 0;
  62.         }
  63.     }
  64. }
  65. // Запуск программы: CTRL+F5 или меню "Отладка" > "Запуск без отладки"
  66. // Отладка программы: F5 или меню "Отладка" > "Запустить отладку"
  67.  
  68. // Советы по началу работы
  69. //   1. В окне обозревателя решений можно добавлять файлы и управлять ими.
  70. //   2. В окне Team Explorer можно подключиться к системе управления версиями.
  71. //   3. В окне "Выходные данные" можно просматривать выходные данные сборки и другие сообщения.
  72. //   4. В окне "Список ошибок" можно просматривать ошибки.
  73. //   5. Последовательно выберите пункты меню "Проект" > "Добавить новый элемент", чтобы создать файлы кода, или "Проект" > "Добавить существующий элемент", чтобы добавить в проект существующие файлы кода.
  74. //   6. Чтобы снова открыть этот проект позже, выберите пункты меню "Файл" > "Открыть" > "Проект" и выберите SLN-файл.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement