p900.cpp 753 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #include <algorithm>
  2. #include <array>
  3. #include <iostream>
  4. #include <map>
  5. #include <utility>
  6. #include <vector>
  7. #include <iomanip>
  8. #include <sstream>
  9. #include <climits>
  10. #include <queue>
  11. #include <list>
  12. using namespace std;
  13. typedef unsigned long long nat;
  14. int main()
  15. {
  16. nat len;
  17. while(cin >> len)
  18. {
  19. if(!len)
  20. break;
  21. cout << "Read len: " << len << endl;
  22. nat result = 1;
  23. for(nat i = 1; i <= len/2; ++i)
  24. {
  25. nat new_combinations = pow((i+1), (len - 2*i)) - 2*(i+1);
  26. result += new_combinations;
  27. cout << "Found " << new_combinations << " for i = " << i << " Result so far: " << result << endl;
  28. }
  29. cout << result << endl;
  30. }
  31. return 0;
  32. }