aboutsummaryrefslogtreecommitdiff
path: root/works/life/chuanzhi-cup/practice-contest/2.cpp
blob: 5622eb49e844c57f69a0c53a200d53add7b8836e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <iostream>

long long sqrt(long long num) {
  long long left = 1, right = num;
  while (left != right) {
    long long mid = (left + right) / 2;
    if (mid * mid < num) {
      left = mid + 1;
    } else {
      right = mid;
    }
  }
  return left;
}

int main() {
  long long c;
  std::cin >> c;

  for (long long i = 1; i < c; i++) {
    long long b2 = c * c - i * i;
    long long b = sqrt(b2);
    if (b * b == b2) {
      std::cout << i << " " << b;
      break;
    }
  }

  return 0;
}