top1编程
← 返回题目
题解

【基础】小X与机器人

1 条题解

  • 0
    @ 2026-7-29 0:15:31
    #include <iostream>
    #include <cmath>
    using namespace std;
    
    int gcd(int a, int b) {
        while (b != 0) {
            int temp = b;
            b = a % b;
            a = temp;
        }
        return a;
    }
    
    int main() {
        int x1, y1, x2, y2;
        cin >> x1 >> y1 >> x2 >> y2;
        
        int dx = abs(x2 - x1);
        int dy = abs(y2 - y1);
        
        if (dx == 0 || dy == 0) {
            cout << dx + dy + 1 << endl;
        } else {
            cout << gcd(dx, dy) + 1 << endl;
        }
        
        return 0;
    }
    
    • 1