Advertisement
vadimk772336

4

Dec 21st, 2021
989
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.27 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3.  
  4. struct comb
  5. {
  6.     int i;
  7.     int j;
  8.     int k;
  9. };
  10.  
  11. int g(int n, std::vector<comb>& combinations)
  12. {
  13.     int size = 0;
  14.     comb combination;
  15.     for (int i = 0; i < 10; ++i)
  16.         for (int j = 0; j < 10; ++j)
  17.             for (int k = 0; k < 10; ++k)
  18.             {
  19.                 if (i + j + k == n)
  20.                 {
  21.                     combination.i = i;
  22.                     combination.j = j;
  23.                     combination.k = k;
  24.                     combinations.push_back(combination);
  25.                     size++;
  26.                 }
  27.             }
  28.  
  29.     return size;
  30. }
  31.  
  32. int f(int n)
  33. {
  34.     std::vector<comb> arr;
  35.     int size = g(n,arr);
  36.     int count = 0;
  37.    
  38.     for (int i = 0; i < size; ++i)
  39.         for (int j = 0; j < size; ++j)
  40.         {
  41.                 if (arr[i].i + arr[j].i <= n &
  42.                     arr[i].j + arr[j].j <= n &
  43.                     arr[i].k + arr[j].k <= n &
  44.                     arr[i].i + arr[j].i >= n - 9 &
  45.                     arr[i].j + arr[j].j >= n - 9 &
  46.                     arr[i].k + arr[j].k >= n - 9)
  47.                     count++;
  48.         }
  49.  
  50.     return count;
  51. }
  52.  
  53. int main()
  54. {
  55.  
  56.     int N;
  57.     std::cin >> N;
  58.  
  59.     std::cout << (N <= 27) * f(N);
  60.  
  61.     return 0;
  62. }
  63.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement