构造A+B

我们有两个正整数 n 和 k,要判断能否构造出 k 对不同的正整数 (x,y),使得 x+y=n。

  • 两对 (x,y) 和 (x′,y′) 不同,当且仅当 x≠x′。

  • 因为 x+y=n,所以 y=n−x,因此每一对由 x 唯一确定。

  • x 必须是正整数,y 也必须是正整数,所以 x≥1 且 y≥1y,即:1≤x≤n−1

  • 所以可能的 x 值是从 1 到 n−1,总共有 n−1种不同的对。

实现代码:

java 复制代码
public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        int k = scanner.nextInt();
        
        if (k <= n - 1) {
            System.out.println("YES");
        } else {
            System.out.println("NO");
        }
        
        scanner.close();
    }
相关推荐
qq_417695051 分钟前
内存对齐与缓存友好设计
开发语言·c++·算法
2301_816651222 分钟前
实时系统下的C++编程
开发语言·c++·算法
一然明月2 分钟前
Qt QML 锚定(Anchors)全解析
java·数据库·qt
晓纪同学3 分钟前
EffctiveC++_02第二章
java·jvm·c++
2401_831824963 分钟前
C++与Python混合编程实战
开发语言·c++·算法
2301_8166512210 分钟前
C++中的策略模式高级应用
开发语言·c++·算法
jgyzl11 分钟前
2026.3.20 用EasyExcel实现excel报表的导入与导出
java·python·excel
LDR00612 分钟前
如何使用OpenClaw提高工作效率?
数据结构·算法
liuyao_xianhui12 分钟前
优选算法_模拟_替换所有的‘?‘_C++
开发语言·javascript·数据结构·c++·算法·链表·动态规划