2 条题解

  • 0
    @ 2025-12-5 21:19:45

    #include <stdio.h>

    int main() { int t; scanf("%d", &t);

    while (t--) {
        long long n, k, x;
        scanf("%lld %lld %lld", &n, &k, &x);
        
        // 最小可能和:1+2+...+k
        long long min_sum = k * (k + 1) / 2;
        
        // 最大可能和:n+(n-1)+...+(n-k+1)
        long long max_sum = k * n - k * (k - 1) / 2;
        
        if (x >= min_sum && x <= max_sum) {
            printf("YES\n");
        } else {
            printf("NO\n");
        }
    }
    
    return 0;
    

    }

    信息

    ID
    712
    时间
    1000ms
    内存
    128MiB
    难度
    10
    标签
    提交数
    6
    已通过
    3
    上传者