1 条题解

  • 0
    @ 2025-8-24 21:14:30

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar Maxmilite
    **

    搬运于2025-08-24 21:14:29,当前版本为作者最后更新于2023-01-05 20:26:28,作者可能在搬运后再次修改,您可在原文处查看最新版

    自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多

    以下是正文


    [语言月赛202301] 一次函数 题解

    Source & Knowledge

    2023 年 1 月语言月赛,由洛谷网校入门计划/基础计划提供。

    文字题解

    题目大意

    给出 nn 对整数 (x,y)(x, y) 即两个整数 k,bk, b,判断满足 y=k×x+by = k \times x + b(x,y)(x, y) 有多少对。

    解析

    按照题意模拟即可。

    建立一个计数器变量,并初始化为 00。对于每对整数 (x,y)(x, y),计算 k×x+bk \times x + b,并与 yy 做比较。如果二者相等,令计数器增加 11

    这里需要注意,在极限情况下,k×x+bk \times x + b 会达到 101410 ^ {14} 的数量级,因此这里需要使用 long long 处理。

    最后输出计数器变量即可。

    核心代码:

    #define lint long long
    lint n, k, b;
    cin >> n >> k >> b;
    int cnt = 0;
    for (int i = 1; i <= n; ++i) {
    	lint x, y;
    	cin >> x >> y;
    	if (y == k * x + b);
       		++cnt;
    }
    cout << cnt << endl;
    

    视频题解

    完整代码请在视频中查看。

    • 1

    信息

    ID
    8241
    时间
    1000ms
    内存
    256MiB
    难度
    1
    标签
    递交数
    0
    已通过
    0
    上传者