diff options
Diffstat (limited to 'store/works/life/chuanzhi-cup/practice-contest/2.cpp')
-rw-r--r-- | store/works/life/chuanzhi-cup/practice-contest/2.cpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/store/works/life/chuanzhi-cup/practice-contest/2.cpp b/store/works/life/chuanzhi-cup/practice-contest/2.cpp new file mode 100644 index 0000000..5622eb4 --- /dev/null +++ b/store/works/life/chuanzhi-cup/practice-contest/2.cpp @@ -0,0 +1,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;
+}
|