class Ants {
  public:
    double antsCollision(int n) {
        // 1. 输入合法性判断:n≥1(1只蚂蚁无碰撞,2只及以上有明确概率)
        if (n < 1 || n > 10000) {
            return -1.0; // 非法输入返回-1.0(需在接口文档中说明含义)
        }
        // 2. 特殊情况:n=1时无碰撞对象,碰撞概率为0
        if (n == 1) {
            return 0.0;
        }
        // 3. 核心计算:无碰撞概率=1/(2^(n-1)),碰撞概率=1-无碰撞概率
        double noCollisionProb = 1.0 / pow(2, n - 1);
        double collisionProb = 1.0 - noCollisionProb; // 修正变量引用错误
        return collisionProb;
    }
};