[语言月赛202301] 一次函数

Luogu
IDLGB3698
Time1000ms
Memory256MB
DifficultyP1
2023O2优化循环结构语言月赛
在二维平面坐标系 $xOy$ 中,一个点的位置可以由横坐标 $x$ 和纵坐标 $y$ 两个参数描述,其坐标记为 $(x,y)$。 一次函数 $y=kx+b$ 是满足纵坐标 $y$ 等于 $k$ 乘以横坐标 $x$ 加 $b$ 的点的集合,即满足该条件的点都在该一次函数的直线上。 现在有 $n$ 个点,第 $i$ 个点的坐标为 $(x_i,y_i)$。 现在请你求出,分别有多少点,在给定的一次函数图像上。 **形式化地,给出 $n$ 对整数 $(x,y)$,请你求出有多少对数满足 $y=k\times x+b$。** ## Input 输入共 $n+1$ 行。 输入的第一行为三个整数 $n,k,b$。 接下来 $n$ 行,每行两个数 $x_i,y_i$,代表第 $i$ 个点的坐标。 ## Output 输出一行一个整数,代表有多少点在给出的一次函数上(即满足 $y_i = kx_i+b$)。 [samples] ## Note ### 样例 1 解释 给出的一次函数为 $y=3x$。 点 $(0,0)$,$(1,3)$,$(3,9)$ 在一次函数上,共 $3$ 个。 ### 数据点性质 对于 $30\%$ 的测试点,$n=1$; 对于 $100\%$ 的测试点,$1 \le n \le 10^6$,$0 \le |k|,|b| \le 10^5$,$0 \le |x_i|,|y_i| \le 10^9$。
Samples
Input #1
5 3 0
0 0
1 3
2 7
3 9
-1 -4
Output #1
3
API Response (JSON)
{
  "problem": {
    "name": "[语言月赛202301] 一次函数",
    "description": {
      "content": "在二维平面坐标系 $xOy$ 中,一个点的位置可以由横坐标 $x$ 和纵坐标 $y$ 两个参数描述,其坐标记为 $(x,y)$。 一次函数 $y=kx+b$ 是满足纵坐标 $y$ 等于 $k$ 乘以横坐标 $x$ 加 $b$ 的点的集合,即满足该条件的点都在该一次函数的直线上。 现在有 $n$ 个点,第 $i$ 个点的坐标为 $(x_i,y_i)$。 现在请你求出,分别有多少点,在给定的一次",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 1000,
      "memory_limit": 262144
    },
    "difficulty": {
      "LuoguStyle": "P1"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGB3698"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "在二维平面坐标系 $xOy$ 中,一个点的位置可以由横坐标 $x$ 和纵坐标 $y$ 两个参数描述,其坐标记为 $(x,y)$。\n\n一次函数 $y=kx+b$ 是满足纵坐标 $y$ 等于 $k$ 乘以横坐标 $x$ 加 $b$ 的点的集合,即满足该条件的点都在该一次函数的直线上。\n\n现在有 $n$ 个点,第 $i$ 个点的坐标为 $(x_i,y_i)$。\n\n现在请你求出,分别有多少点,在给定的一次...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments